cover.png
nohup — процессы, которые не умирают

Подключились к серверу по SSH, запустили долгую задачу, закрыли ноутбук — и процесс умер. Знакомо?

При закрытии терминала система отправляет сигнал SIGHUP (hangup) всем дочерним процессам, завершая их. Утилита nohup решает эту проблему — она игнорирует этот сигнал.

nohup ./long_task.sh &

Добавляем & в конце, чтобы процесс ушёл в фоновый режим. Вывод по умолчанию записывается в файл nohup.out.

Если вывод не нужен — перенаправляем в /dev/null (подробнее про перенаправления в этом посте ):

nohup ./script.sh > /dev/null 2>&1 &

Несколько нюансов:

  • После запуска можно безопасно закрыть терминал
  • Процесс продолжит работу с PPID=1 (Parent Process ID)
  • Для интерактивного управления задачами лучше подойдут screen или tmux

Простая утилита, которая выручает, когда нужно быстро запустить что-то долгоиграющее без лишних настроек.


Этот пост также доступен в Telegram

Copyright 2026. All rights reserved.

Привет, друг! Coding Overhead — это мой личный блог о современных технологиях и полезных утилитах.