꾸준하게, 차근차근

[Linux] nohup 명령어 본문

Linux

[Linux] nohup 명령어

jn4624 2022. 4. 28. 18:44

1. nohup 명령어

명령의 정지나 로그아웃에 영향을 받지 않는 명령으로 유닉스 시스템의 접두부(다른 명령의 앞에 오는 명령) 명령의 하나이다.

따라서 해당 명령을 지속적으로 실행하고자 할 때 사용된다.

 

2. nohup 실행

nohup [실행파일명] &

위와 같이 명령어를 실행하면 위 실행파일이 백그라운드에서 실행된다.

‼️ 주의

nohup으로 실행할 쉘스크립트 파일(*.sh)은 퍼미션이 755 이상이어야 한다.

 

3. 로그파일 남기지 않도록 nohup 실행

nohup [실행파일명] 1>/dev/null 2>&1 &

1>/dev/null 이 표현은 1의 결과를 /dev/null 이라는 파일 속에 넣는다 라는 의미이다. /dev/null로 보내버리면 모든 출력을 없애버린다.

2>&1 이 표현은 2번 파일 디스크립터를 1번에 지정된 형식과 동일하게 /dev/null로 지정한다는 의미이다.

& 은 프로그램을 백그라운드에서 실행하도록 하는 표현이다.

 

4. nohup 실행 확인

ps -ef | grep [리눅스 접속 유저명]
[root@idcserver ~]$ ps -ef | grep jnlim
root     36221  1064  0 18:38 ?        00:00:00 sshd: root [priv]
root    36230 36221  0 18:38 ?        00:00:00 sshd: root@pts/0
root    36231 36230  0 18:38 pts/0    00:00:00 -bash
root    36255 36231  0 18:38 pts/0    00:00:00 ps -ef
root    36256 36231  0 18:38 pts/0    00:00:00 grep --color=auto root

 

5. nohup 삭제

a. ps -ef | grep 명령어로 실행

ps -ef | grep 쉘스크립트파일명

 

b. kill 명령어로 실행

kill -9 PID번호

 

 

🙏 참조 ::