본문 바로가기
아이티 공부/리눅스

nohup 명령어란 무엇인가?

by Klero 2017. 2. 26.

리눅스에서 사용되는 nohup 명령어는 두 가지 기능이 있다.

 

1. 표준 출력을 nohup.out (또는 다른 곳) 으로 돌리는 작업을 수행
2. 프로세스가 중단되지 않는 백그라운드 작업을 수행

 

 

1. 표준 출력을 nohup.out (또는 다른 곳) 으로 돌리는 작업을 수행 예제

 

[webadmin@WeblogicLinux ~]$ nohup echo hello
nohup: ignoring input and appending output to `nohup.out'


[webadmin@WeblogicLinux ~]$ cat nohup.out
hello

 

-> echo 내용이 nohup.out으로 출력되었다.


 

2. 프로세스가 중단되지 않는 백그라운드 작업을 수행

 

- 물론 명령어 뒤에 & 만 붙여도 백그라운드로 작업을 수행하긴 한다.

하지만 사용자가 터미널 세션을 끊어버리면 백그라운드로 작업중인 작업도 같이 종료가 되어 추후 문제가 생길 소지가

다분하다.

그래서 사용하는 명령어가 nohup 이라는 명령어 이다. 사용방법은 아래와 같다.

# nohup ./aaa.sh &

 

프롬프트가 돌아오면 아래의 명령어를 수행해 해당 프로세스가 정상적으로 떠있는 것을 확인할 수 있다.

# ps -ef | grep aaa.sh

 

nohup 명령어에 의해 수행중인 작업을 종료하려면 ps -ef 명령어로 해당 프로세스의 pid를 확인하고 kiill 명령어로 죽여야 한다.
또한 nohup 명령어에 의해 수행된 작업은 자동으로 nohup.out 이름으로 nohup 명령어를 실행한 위치에 자동으로 생성된다.

 

 

 

조금이나마 도움이 되셨다면 밑에 공감 한 번 클릭해주시면 감사하겠습니다.

반응형

댓글