Запускать скрипты в фоновом режиме в TTY

Есть довольно и несколько вопросов, в которых задается вопрос, что можно сделать, чтобы запустить сценарий оболочки в фоновом режиме, не запуская терминал. Большинство посоветовали использовать nohup или disown.

Это может быть глупый вопрос, но я новичок в Linux и Ubuntu, но может кто-нибудь объяснить мне, почему бы просто не нажать Ctrl + Alt + 1 ... 6 , чтобы открыть TTY (телетайпный терминал) и запустить сценарий с добавлением &? Тогда я могу просто выбрать другой TTY или GUI, чтобы продолжить то, что я делаю. Я прочитал здесь, что я могу даже больше TTY (хотя ответ не говорит мне, как)

Каковы за и против этого подхода по сравнению с «общепринятым» (в SE это кажется, по крайней мере)

0
задан 23 May 2017 в 15:39

1 ответ

nohup буквально средства no hang up т.е. заставляют процесс проигнорировать закрытие терминала. Если Вы не будете использовать nohup, то Ваш процесс будет уничтожен при закрытии терминала (выход из системы).

& средства run in background. Ваши нажатия клавиш переходят к приоритетному процессу. Таким образом, если Вы будете использовать & процесс Вы, то запуск не получит Ваши нажатия клавиш.

оборотная сторона того, что Вы предлагаете (для выполнения каждого процесса на запасном терминале) - то, что у Вас закончатся запасные терминалы. Вы могли бы хотеть изучить использование screen, который позволяет Вам создать терминалы динамично (ctrl-a c). Затем можно запустить каждый процесс в различном терминале. Можно также заставить scrollback буферизовать огромный (например, 5 000 строк), таким образом, можно прокрутить назад и видеть все данные логов, не имея необходимость перенаправлять его в файлы.

1
ответ дан 23 May 2017 в 15:39

Другие вопросы по тегам:

Похожие вопросы: