리눅스 nohup
IT위키
더 많은 작업
- 실행 중인 프로세스가 행업 시그널을 무시하고 파일로 출력한다.
- 유닉스와 리눅스 모두에서 명령어와 옵션이 같음
- 경로 : /usr/bin/nohup
nohup 명령 [인수···]
- 로그아웃하면 셸이 자식 프로세스에 SIGHUP(행업) 시그널을 보내 함께 끝낸다. nohup 으로 실행한 명령은 이 시그널을 무시하므로 로그아웃한 뒤에도 계속 돈다
- 출력을 따로 돌리지 않으면 표준 출력을 현재 디렉터리의 nohup.out(쓸 수 없으면 ~/nohup.out)에 덧붙인다
- 백그라운드로 돌리려면 끝에 & 를 붙인다
- 명령을 실행하던 터미널(세션)이 끊기거나 닫혀도 프로세스가 계속 실행되게 할 때 쓴다
- bg 는 멈춘 작업을 백그라운드에서 다시 돌리고, fg 는 포그라운드로 가져오며, jobs 는 작업 목록을 본다. 셋 다 현재 셸의 작업 제어라 셸이 끝나면 작업도 SIGHUP 을 받아 끝난다
- 프로세스 실행 방식을 바꾸는 명령이지 문자열을 처리하는 명령이 아니다. 로그에서 문자열을 찾고 세는 것은 grep, awk, wc 의 일이다
- 프로세스의 우선순위와는 관계없다. 우선순위를 정해 실행하는 것은 nice, 실행 중에 바꾸는 것은 renice 다
$ nohup ./backup.sh & [1] 2345 nohup: ignoring input and appending output to 'nohup.out' $ nohup ./backup.sh > backup.log 2>&1 &