리눅스마스터1급: 프로세스를 끝까지 실행시켜주는 nohub
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 2,293 조회
- 0 추천
- 목록
본문
리눅스마스터1급: 프로세스를 끝까지 실행시켜주는 nohub
nohub
터미널 사용자들이 시스템에 로그인하여 프로그램을 실행시키고 그 프로그램이 종료되지 않은 상태에서 로그아웃을 하게 되면, 프로그램은 HUP(행업) 프로세스에 의해 강제종료된다.
그러나 nohup으로 해당 프로그램을 실행시키면 로그아웃을 하더라도 HUP 프로세스의 적용을 받지 않고 계속 실행이 된다.
즉, 터미널을 빠져나가더라도 실행했던 프로그램을 끝까지 실행하려면 nohup 명령어와 함께 실행시킨다.
1) 개요
|
|
|
| nohub 명령 [인수 ...] |
|
|
|
|
2) 설명
nohup은 이것과 함께 수행된 명령에 대하여 Hangup 신호를 무시한 채 지속적으로 실행하도록 하며, 우선권을 5만큼 증가시켜 로그아웃한 후에도 계속 백그라운드로 실행할 수 있도록 해 준다.
그래서 이것은 관리자가 장시간 자리를 비우거나 비접속 상태에 있어야 하는 경우에 유용하게 사용된다.
표준 출력이 tty였다면 표준 출력과 표준 에러는 nohup.out이라는 파일에 추가된다.
그리고 쓰기 작업이 불가능한 경우 $HOME/nohup.out 파일에 추가되는데, 그것도 불가능한 경우에는 실행이 되지 않는다.
nohup은 nohup.out 또는 $HOME/nohup.out 파일을 생성하고 그룹/타인에게는 접근 권한을 부여하지 않는다.
만약 이 파일이 이미 존재한다면 기존의 허가권을 변화시키지는 않는다.
nohup은 실행한 명령을 자동으로 백그라운드로 보내지 않는다.
명령행 뒤에 &를 붙인다든지 하여 명시적으로 백그라운드로 보내주어야 한다.
다음과 같이 명령을 내릴 수 있다.
다음 예제에서 nohup에 의해 tar 명령을 실행했으며, 표준 출력이 nohup.out 파일로 출력되고 있음을 알 수 있다.
|
|
|
| # nohup tar cvzf test.tgz /root/* & [10] 7341 nohub: appending output to 'nohup.out' # |
|
|
|
|
관련자료
-
이전
-
다음