Общие рекомендации состоят в том, чтобы использовать оконечный мультиплексор (например. tmux
или screen
) и выполненный копия внутри, так как это дает той много гибкости. Можно отсоединить/повторно прикрепить по мере необходимости, чтобы проверить, как операция продолжается.
Эти программы создают "виртуальные" (бездисплейные) терминалы, которые отображены на/взятие входе от "реального" терминала (консоль Linux, X эмуляторов терминала, соединение SSH...). Поскольку виртуальный терминал не затронут прерываниями в реальных терминалах (оконечный мультиплексор просто прекращает отображать вывод, когда он обнаруживает закрываемое устройство IO и продолжает хранить вывод в, он - внутренний буфер), приложения, работающие внутри, экранируются от SIGHUP. В качестве награды они обычно предлагают по крайней мере некоторые основные ультрасовременные текстом возможности работы с окнами.
Я не уверен в tmux
(который активно разрабатывается), но GNU screen
должен быть включен в стандартный репозиторий RHEL.
Буферизация Stdout, вероятно, из-за systemd redirect
Добавление sys.stdout.flush() после записи или окружения PYTHONUNBUFFERED решит эту проблему
См. также вопрос переполнения стека Буферизация вывода питона.