나는 리모트 서버에 힘을 많이 기울인다. 나는 SSH을 이용하여 나의 서버에 연결한다. 종종 나는 심지어 내가 나의 SSH 커넥션을 닫은 후에 내가 런을 빌릴 수 있기 위해 필요한 과정을 달린다. 이것은 나의 로그 파일이나 매우 큰 mysql 데이터베이스 복구를 통해 문법에 맞는 껍질 스크립트일 수 있었다. 그것 ’나일 때 s은 불리운“ nohup을 리눅스 명령 라인 유틸리티로 바꾼다. ”“Nohup”은“ hangup의 줄임말이 아니다. ”어느 것은“ 시그널을 걸어라 무시하기 위해 번역한다. ””시그널“ 위로 당신이 완전히 벌목할 때 일어나는 것이 있다 걸린다. “nohup”이 하는 것은 그것이 당신이 당신의 서버로 벌목하고 과정을 시작하고 벌목하도록 허락한다는 것이다. 심지어 당신이 완전히 벌목한 후에 과정은 달리기를 계속한다. 당신이 다시 로그인할 때 당신은 그것의 아직도 달리고 다시 제공해서 그 과정에 접근할 수 있다.
“nohup의 기초적인 구문”은 있다:
&# nohup[명령]
”당신의 껍질 스크립트나 명령의 이름이 있는“ 명령을 대신해라. ”끝에(서)“&백그라운드 과정으로서 명령이나 스크립트 런을 얻는다. 여기 ’당신이“ nohup을 이용하여 어떻게” 큰 mysql 데이터베이스의 백업을 당신의 리모트 서버를 얻을 것인지에 대한 예 s. 처음(에)나는 SSH을 이용해서 나의 리모트 서버에(게)로그인한다:
# ssh calvin@sevenacross.com
그때 나는” 전에“ nohup”을 더함으로써“ nohup 방식”에(서)“mysqldump -ucalvin -phobbes largedatabase > largedatabase.db을 명하여라” 명령 후에 그리고“&수행한다:
&# nohup mysqldump -ucalvin -phobbes largedatabase > largedatabase.db
1 3999
# nohup: nohup.out에 대한 아웃풋을 첨가하기 ’
당신이 얻는 아웃풋의 2 라인이 있다. ″첫번째 라인에(서)“3999은“ nohup 동안 단지 내가 낳은 과정의 과정 ID 카드이다: nohup.out에 대한 아웃풋을 첨가하기 ’” terminal이” 당신이 명령에 착수한 디렉토리에(서)파일로 불리운“ nohup.out을 전송해 진다 그것이 대개 올 것이다 미뤄라 그것을 완전히 의미한다. 당신은 과정이 모든 달리는 과정을 자세히 찾아보게 과정 ID 카드를 이용하면서 옆에 아직도 달리고 있다면 체크할 수 있다:
# ps -ef grep 3999
calvin 3999 29848 0 18:42? 00:00:00 /usr/bin/mysqldump
pts/2 calvin 6575 31852 0 18:44 00:00:00 grep 3999
과정을 할 때 당신을 달리는 것은 이것과 같은 커맨드라인에(서)아웃풋을 볼 것이다:
한 1 + nohup mysqldump -ucalvin -phobbes largedatabase > largedatabase.db
당신은” 어떤 오류나 과정이 달리고 있었던 동안 출력된 다른 메시지를 검사하는 것 파일“ nohup.out을 체크할 수 있다. 파일이 남아 있다면 그것을 지워라 ’s 오케이. 그것은 과정이 달리고 있었던 동안 어떤 메시지도 출력되지 않았다는 것을 의미한다.
북마크와 몫





























1이… 아래 그것을 읽었다고 말하거나 그것을 더한다.
안녕하세요- Nohup이 유용하지만 당신이 원하면 terminal에 다시 연결하고 당신이 스크린을 이용한다면 떼어 낼 수 있고 안에 백그라운드를 또한이 지는 명령을 가진다.
http://www.gnu.org/software/screen/
–
Bobby
코멘트를 남겨라