Запуск процесса через команду SSH и поддержание его работоспособности
Я пытаюсь запустить программу Python на удаленном сервере, используя nohup, как описано в: Как сохранить процессы запущенными после завершения сеанса ssh?
Когда я делаю ssh server -C "nohup prog.py &", программа Python существует с BrokenPipeError: [Errno 32] Broken pipe,
Когда я делаю ssh server -C "nohup prog.py"Программа Python работает без сбоев, но ssh-соединение, очевидно, остается в живых. Однажды я ctrl^c это я получаю Broken pipe ошибка снова.
Очевидно, я что-то здесь упускаю, но понятия не имею, что.
2 ответа
Как и в комментарии к xenoid, перенаправление stdout/stderr в любое место, кроме экрана, решило проблему.
Попробуй GNU Screen (ssh server -t "screen python prog.py"). Экран защитит процесс от смерти. использование ^A затем d отделить и screen -xr прикрепить