문제

그래서 나는 스크립트하고 싶은 루트로 실행하지 않고,전화 끊기 및습니다.무엇을 위해 주어야 한다는 명령을까요?

sudo nohup 좋은 foo.bash&

nohup 좋은 sudo foo.bash&

etc.

나는 그것을 의심 중요하지 않지만 어떤 통찰력을에서 사람들 알고있다.

도움이 되었습니까?

해결책

부정적인 niceness가 원한다면, 나는 할 것입니다 : sudo nohup nice 명령 'info coreutils'nohup에 따르면 선행 멋진. 부정적인 좋은 가치를 원한다면 Sudo는 이전에 와야합니다. Root만이 부정적인 멋진 값을 사용할 수 있기 때문입니다.

긍정적 인 niceness가 원한다면 간단하게 할 것입니다.

다른 팁

Sudo는 Niceness를 존중하지 않을 수 있습니다. 적어도 내 컴퓨터에 있지 않습니다 (Ubuntu 9.04). 이것을 실행 :

nice sudo nice
sudo nice nice

0과 10을 인쇄합니다 (명령이없는 'nice'는 현재의 냉담함을 인쇄합니다.)

Sudo는 Nohup과 Nice가 루트 특권으로 달리지 않도록 마지막으로 가야합니다.

그래서 후자

~ $ sudo nohup nice whoami
nohup: ignoring input and appending output to `nohup.out'
~ $ sudo cat nohup.out 
root

당신이 한 첫 번째 방법과 두 번째 방법의 차이점은 Nohup.out 파일을 소유 한 사람입니다. sudo 먼저 루트를 소유하게합니다. nohup Sudo가 사용자가 소유하게하기 전에.

동의하지 않는다 다른 답변으로. 나는 추천한다 :

sudo nohup nice foo.sh

나는 관찰했다 Nohup Sudo #불합격 -IE Nohup이 항상 Sudo'd 하위 서브 프로세스로 전송되는 것은 아닙니다 (이것은 다른 스크립트에 위임 한 Ubuntu의 특정 /etc/init.d 스크립트를위한 것입니다). 왜 그런지, 확실히 놀랍지 만, 사실이었고 디버그하는 동안 좋은 일을했습니다.

(다른 사람들은 냉담함이 통과되지 않는다고보고하기 때문에 마지막으로 말하는 것이 가장 좋다고 생각합니다 ... OS에 대한 의심이 더 일찍 좋지는 않지만, 효력을 발휘하지 못하는 것이 일반적으로 Nohup이 효력을 발휘하지 않는 것보다 문제가 적기 때문입니다!)

주목하십시오 Sudo nohup 언급 된 바와 같이 루트가 소유 한 Nohup.out를 남겨 두지만 다음과 같이 수정됩니다.

sudo nohup nice foo.sh >> /tmp/foo.stdout.log 2>> /tmp/foo.stderr.log

난 모든 이들의 exec*syscall 공을 전달하고 다음 중 하나,그래서,어떤 순서,그것을 떠나지 않을 것에 매달려 프로세스입니다.

내가 말하는 nohup 해야 마지막으로 이렇게는 두 개의 다른 하지 않 clober 신호 처리기입니다.(나는 확실히 좋지 않으로 재생 신호를 그러나 sudo 않습니다.)

그런 다음,sudo 과 멋,그것은 모두에 따라 달라는 당신이 원하는 방식을 변경하는 스케줄링을 최우선으로 좋습니다.

  • 당신이 원하는 경우 우선 순위를 올릴(즉,게 부정적인 값을 좋)할 sudo 다.
  • 하려는 경우 낮은 우선순위(을 긍정적인 값)기 전에 그것을 할 sudo,필요가 없으므로 root 권한이 있습니다.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top