Python programınız geri alınır nohup
.
nohup
ile hangup sinyalini yok sayar SIG_IGN
ve daha sonra zincir aynı programa yükler.
Python programınız , kendi sinyal işleyicisini kurarak kapatma sinyali için sinyal işlemeyi derhal sıfırlar . Bu işleyici, dahili bir işlevi kontrol eder (çok iyi tasarlanmamıştır, eğer gördüğüm, bazı kusurlu varsayımlara dayanarak) ve bir askıya alma sinyali alındığında uygun eylem yolunun bu mesajı yazdırmak olduğuna karar verir. ve çıkın.
Tasarım gereği Python programınız mümkün değildir nohup
. Bir iş kontrol kabuğuna ve POSIX oturum / iş semantiğine sahip bir sistemde, işin başında olmanız gerekir, disown
böylece kabuğun ilk etapta bir askıya alma sinyali göndermek için bunu hiç bilmemesi gerekir.
(Bu bile systemd işletim sistemlerinde yeterli değildir. Systemd kullanıcıları, kullanıcı alanı oturum açma mekanizmalarından bir parça domuz kulağı yaptıklarından, ayrıca sistemd'in sisteme kapatma yerine sistem kapatma sinyalini veren mekanizmasını da sağlamanız gerekir. her çıkışta oturumlar da devreye girmiyor.)
daha fazla okuma
tmux
ve görmezden geliyorumnohup
ya da reddetiyorum.