Недавно мне стало нравиться setsid
. Сначала это выглядит так, как будто вы просто запускаете что-то с терминала, но вы можете отключить (закрыть терминал), и это просто продолжается.
Это происходит потому, что команда фактически разветвляется, и в то время как входные данные поступают на текущий терминал, они принадлежат совершенно другому родительскому устройству (которое остается активным после закрытия терминала).
Пример:
setsid gnome-calculator
Я также весьма неравнодушен к disown
который может быть использован для отделения процесса от текущего дерева. Вы используете его в сочетании с фоновым амперсандом:
gnome-calculator & disown
Я также только что узнал о порождении подоболочек с помощью круглых скобок. Этот простой метод работает:
(gnome-calculator &)
И, конечно же, есть nohup
как вы уже упоминали. Я не в восторге от nohup
потому что у него есть тенденция писать в ~/nohup.out
без моей просьбы об этом. Если вы полагаетесь на это, это может быть для вас.
nohup gnome-calculator
А для долгосрочных процессов существуют такие вещи, как screen
и другие виртуальные мультиплексоры терминалов, которые поддерживают сеансы между подключениями. Вероятно, это на самом деле не относится к вам, потому что вам просто нужен временный доступ к выводу терминала, но если вы хотите возвращаться некоторое время спустя и просмотрите последние действия терминала, экран, вероятно, будет вашим лучшим выбором.
Интернет полон screen
учебники, но вот простой быстрый старт: