nohup을 사용하여 sudo 명령을 실행하는 방법은 무엇입니까? sudo 명령을 실행한 다음 프로세스를 중단하거나 중지하지 않고 ssh 세션을 종료하고 싶습니다.
시도해봤지만 효과가 없었어요
sudo nohup . test.sh
답변1
사용
nohup sudo <command> &
두 번째 문제는 실행 모드입니다. 셸 내부 명령이므로 함께 . script
사용할 수 없으며 실행 파일만 허용합니다. 이는 오류 메시지에도 표시되어야 합니다.nohup
.
nohup
nohup.out
즉, 사용
nohup sudo /bin/bash script.sh &
(또는 실행하는 쉘) 스크립트를 실행 가능하게 만드십시오.
답변2
실패한 것은 sudo 명령이 아니라 .
내부 쉘 명령이기 때문에 실패하는 것입니다. 다음은 유효할 수 있습니다.
sudo nohup /bin/bash test.sh
또는:
nohup sudo /bin/bash test.sh
차이점은 nohup.out의 소유자입니다.
안돼, 안돼:
sudo /bin/bash test.sh & disown %1
또는:
(sudo /bin/bash test.sh &)
후자의 두 경우에 로그인이 필요한 경우에는 >logfile 2>&1을 사용하세요. 스크립트의 특성에 따라 이를 지정할 필요가 없을 수도 .
있고 /bin/bash
전혀 지정할 필요가 없을 수도 있습니다.