문제는 프로세스가 내 활성 쉘 내의 작업이 아니라는 것입니다(X 시스템이 충돌하여 원격에서 로그인했기 때문입니다). 즉, , , disown
& 등을 의미합니다. 작동하지 않습니다.nohup
CTRL+Z
bg
screen
동기 부여: 그놈 터미널 내에서 장기 실행 작업을 시작했습니다. 내 X 시스템이 충돌했기 때문에 상위 시스템에서 분리하고 싶습니다. X 시스템을 종료하면 Gnome Desktop + Gnome Terminal + 나의 소중한 스크립트도 손실될까봐 걱정됩니다. 따라서 원격으로 로그인하여 스크립트 프로세스를 저장하고 X를 다시 시작할 수 있습니다. 어떻게 해야 합니까?
답변1
작업을 실행하는 데 사용하는 스크립팅 언어에 따라 다음을 사용할 수 있습니다.
setpgrp()
Perl: setpgrp PID, PGRP
일단 시작되면 제어 터미널이 실행 중인 프로세스를 손상시키지 않고 종료할 수 있도록 제어 터미널에서 실행 중인 프로세스를 분리합니다.
이제 설명한 내용을 바탕으로 Gnome 터미널을 실행하고 거기에서 작업을 시작하여 제어 터미널과 셸을 갖게 되므로 제대로 nohup
작동할 것입니다.