Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

SERVICE_CONTROL Linux / DevOps

Управление службами в Linux: команды systemctl для начинающих

Обновлено: 27.08.2026 · Официальная документация ↗

Управление демонами и службами в Linux

Когда веб-сайт перестает отвечать, база данных не принимает подключения или завис почтовый сервер, администратору необходимо проверить статус службы и выполнить ее перезапуск. Главный инструмент для управления всеми процессами в Linux — утилита systemctl.

Базовые команды управления службами (Шпаргалка)

Вместо nginx подставьте имя вашей службы (например: mysql, apache2, docker, php8.2-fpm, ssh).

  1. Проверить статус службы:
    sudo systemctl status nginx
    Зеленый статус active (running) означает штатную работу. Красный failed или dead указывает на сбой.
  2. Перезапустить службу (жесткий перезапуск):
    sudo systemctl restart nginx
  3. Мягкая перезагрузка без обрыва активных соединений (Reload):
    sudo systemctl reload nginx
  4. Остановить работающую службу:
    sudo systemctl stop nginx
  5. Запустить остановленную службу:
    sudo systemctl start nginx
  6. Включить / Отключить автозапуск при старте сервера:
    # Включить автозагрузку:
    sudo systemctl enable nginx
    
    # Отключить автозагрузку:
    sudo systemctl disable nginx

Что делать, если служба зависла на команде stop/restart? Нажмите Ctrl + C для выхода из зависшей команды, найдите зависший PID процесса через ps aux | grep имя_службы и завершите его принудительно: sudo kill -9 PID.

💡 Практика специалистов: Перед перезапуском критически важных сервисов (Nginx, Apache, PHP-FPM) всегда проверяйте их синтаксис (например, nginx -t или apachectl configtest). Это убережет вас от отключения сайта из-за случайной точки с запятой.

Частые вопросы (FAQ)

В чем разница между restart и reload в systemctl?

Restart полностью убивает процесс и запускает его с нуля (на долю секунды соединение обрывается). Reload только перечитывает конфигурационные файлы на лету без остановки обработки клиентов.

Как посмотреть список всех упавших служб в системе?

Выполните команду systemctl --failed. Она выведет список всех сервисов, которые завершились аварийно.

Как выйти из экрана просмотра systemctl status?

Нажмите на клавиатуре латинскую клавишу q.

Почему при вводе команды systemctl reload сервис пишет unsupported?

Не все программы поддерживают мягкую перезагрузку без перезапуска процесса. В таком случае необходимо использовать systemctl restart.

Полезные материалы
Рекомендуем