>_ IzzyLab

Практическое задание

Фоновый процесс с nohup

средне

Запусти sleep 300 в фоне так, чтобы он пережил выход из сессии (через nohup), и запиши его PID в /root/bg.pid.

Что потренируешь:
  • nohup
  • фоновый процесс
  • $!
  • SIGHUP
  • управление процессами

Разбор темы

Амперсанд & отправляет команду в фон, но при выходе из шелла фоновым потомкам приходит сигнал SIGHUP и они умирают. Чтобы процесс пережил закрытие сессии, его запускают под nohup, который игнорирует этот сигнал, а вывод обычно перенаправляют в файл или /dev/null. PID последнего запущенного в фоне процесса шелл кладёт в переменную $! — её и сохраняют. Проверить, что процесс жив, можно «нулевым» сигналом kill -0.

Что проверяется

  1. фоновый sleep 300 жив, PID сохранён

Как это выглядит