Есть ли разница между nohup и nohup на экране?

В настоящее время я запускаю mathematica в кластере Linux, я хочу, чтобы работа работала стабильно, даже если я выхожу из системы. Поэтому я использую nohup . Тем не менее, я обнаружил, что иногда nohup заканчивается без каких-либо признаков (я не вижу сообщения об ошибке в выходном файле, он просто остановился в середине вычисления.)

Возможно, это связано с Mathematica. Но я думаю, может быть, мне стоит попробовать screen . Поэтому я придумал этот вопрос. В чем разница между nohup и nohup на экране? Будет ли nohup внутри экрана более стабильным, чем просто nohup ?

Это не будет иметь особого значения в том смысле, что если вы запустите screen (или tmux ), и вы отключитесь, в приложение будет отправлен сигнал NOHUP, независимо от того, начинаете ли вы его с nohup или нет.

Я предлагаю вам попробовать его с помощью screen / tmux и просто запустить программу без nohup . Затем забудьте отключить, войдите в систему и снова подключитесь к предыдущей сессии. Вы увидите, что ваш сеанс просто продолжает работать и что вы можете видеть его вывод (для прокрутки в буфере требуются специальные команды), и вы можете (возможно) прервать запущенную программу, нажав Ctrl + C , по существу, как если бы вы никогда не отключается.

Поэтому, когда ваша оригинальная программа каким-то образом заканчивается неожиданно и, надеюсь, пишет в nohup.out чем причина, теперь этот вывод поступает в буфер сеанса screen . Но если он ничего не выводит при использовании nohup вы не получите больше информации при запуске внутри screen . Это не nohup который заканчивается, это ваша программа, которая работает, несмотря на запуск «под» nohup .