Ваша программа на Python отменяется nohup.
nohupигнорирует сигнал зависания с помощью SIG_IGNи затем загружает вашу программу в том же процессе.
Ваша программа Python быстро сбрасывает обработку сигнала для сигнала зависания, устанавливая свой собственный обработчик сигнала. Этот обработчик проверяет внутреннюю функцию (которая не очень хорошо спроектирована, основываясь на некоторых ошибочных предположениях, если это та, которую я видел) и решает, что надлежащий порядок действий при получении сигнала зависания - распечатать это сообщение. и выход.
Ваша программа на Python по nohupсвоему замыслу невозможна. В системе с оболочкой управления заданиями и семантикой сеансов / заданий POSIX вы должны выполнять disownзадание, чтобы оболочка никогда не знала об этом, чтобы сначала отправить ему сигнал зависания.
(Даже этого недостаточно в операционных системах systemd. Поскольку люди, работающие с systemd, чуть-чуть ухватились за ухватку своего механизма сеанса входа в пользовательское пространство, вам также необходимо убедиться, что механизм systemd, который сигнализирует об отключении системы, а не зависает, для сеансы входа в систему при каждом выходе из системы также не включаются.)
дальнейшее чтение
tmuxи игнорируюnohupили полностью отрекаюсь от фоновой задачи.