강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

리눅스마스터1급: 프로세스를 끝까지 실행시켜주는 nohub

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스마스터1: 프로세스를 끝까지 실행시켜주는 nohub




 

nohub

 

 

터미널 사용자들이 시스템에 로그인하여 프로그램을 실행시키고 그 프로그램이 종료되지 않은 상태에서 로그아웃을 하게 되면, 프로그램은 HUP(행업) 프로세스에 의해 강제종료된다.

 

 

 

그러나 nohup으로 해당 프로그램을 실행시키면 로그아웃을 하더라도 HUP 프로세스의 적용을 받지 않고 계속 실행이 된다.

 

 

 

, 터미널을 빠져나가더라도 실행했던 프로그램을 끝까지 실행하려면 nohup 명령어와 함께 실행시킨다.

 

 

 

 

1) 개요

 

 

 

 

nohub 명령 [인수 ...]

 

 

 

 

 

 

2) 설명

 

 

nohup은 이것과 함께 수행된 명령에 대하여 Hangup 신호를 무시한 채 지속적으로 실행하도록 하며, 우선권을 5만큼 증가시켜 로그아웃한 후에도 계속 백그라운드로 실행할 수 있도록 해 준다.

 

 

 

그래서 이것은 관리자가 장시간 자리를 비우거나 비접속 상태에 있어야 하는 경우에 유용하게 사용된다.

 

 

 

 

표준 출력이 tty였다면 표준 출력과 표준 에러는 nohup.out이라는 파일에 추가된다.

 

 

 

그리고 쓰기 작업이 불가능한 경우 $HOME/nohup.out 파일에 추가되는데, 그것도 불가능한 경우에는 실행이 되지 않는다.

 

 

 

 

nohupnohup.out 또는 $HOME/nohup.out 파일을 생성하고 그룹/타인에게는 접근 권한을 부여하지 않는다.

 

 

 

만약 이 파일이 이미 존재한다면 기존의 허가권을 변화시키지는 않는다.

 

 

 

 

nohup은 실행한 명령을 자동으로 백그라운드로 보내지 않는다.

 

 

 

명령행 뒤에 &를 붙인다든지 하여 명시적으로 백그라운드로 보내주어야 한다.

 

 

 

 

다음과 같이 명령을 내릴 수 있다.

 

 

 

다음 예제에서 nohup에 의해 tar 명령을 실행했으며, 표준 출력이 nohup.out 파일로 출력되고 있음을 알 수 있다.

 

 

 

 

 

 

 

 

 

# nohup tar cvzf test.tgz /root/* &

[10] 7341

nohub: appending output to 'nohup.out'

#

 

 

 

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,045 명
  • 현재 강좌수 :  35,861 개
  • 현재 접속자 :  71 명