WHEREIS

백그라운드 작업이 필요할 경우가 있을 수 있다.

1. 데몬형태로 뭐를 띄운다거나,
2. cpu 많이 안잡아먹는데, 실행이 겁나 오래 걸리는. (예를들면, 10g짜리 압축을 푼다거나 뭐 이런거. ㅋ )
보통 명령어 뒤에 & 만 붙여도 백그라운드로 작업을 한다.

test.sh &


그런데 이럴경우 사용자가 터미널 세션이 끊어버리면 백그라운드 중인 작업도 같이 종료되어 문제가 발생할 소지가 있다.
그래서 이럴때 쓰는 명령어

nohup

nohup ./test.sh &

저러면 쉘이 실행 되면서 몇 초 정도 깜박거리거나, 해당 로그가 떨어지다가
곧 프롬프트 상태로 돌아온다.

nohup 확인

그리고 나서

ps -ef 


해주면 test.sh가 떠있는걸 확인할 수 있다.


nohup 종료
종료하는 방법은 따로 없다.
ctrl+c, ctrl+d 백날 눌러봐야 소용없다. ㅋ
ps -ef 로 해당 쉘 pid 확인해서 kill로 종료시키면 된다.

kill [pid of test.sh]


nohup 로그

nohup으로 실행된 쉘 스크립트는 자동으로 nohup.out 이라는 이름으로 nohup을 실행한 위치에 자동으로 생성된다.


출처 : http://changpd.blogspot.kr/2013/04/linux-nohup-xxxsh.html

'OS - Linux > Linux - ETC' 카테고리의 다른 글

df 용량과 실제 사용량이 틀린 경우  (0) 2014.05.19
히스토리 로그 설정  (0) 2014.05.17
[리눅스] 파일 접근 제어 설정 & 권한 설정  (0) 2014.04.11
Top 명령어 옵션  (0) 2014.04.11
ps 명령어 기초  (0) 2014.04.11

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band
loading