Найти в Дзене
Merion Academy

Как запустить, остановить и перезапустить сервисы в Linux

Linux обеспечивает детальный контроль над системными службами через systemd с помощью команды systemctl. Службы могут быть включены, выключены, перезапущены, перезагружены или даже включены или отключены при загрузке. Если вы используете Debian, CentOSили Ubuntu, ваша система, вероятно, использует systemd. Это руководство покажет вам, как использовать основные команды для запуска, остановки и перезапуска служб в Linux. БАЗОВЫЙ СИНТАКСИС КОМАНДЫ SYSTEMCTL Основной синтаксис для использования команды systemctl: systemctl [command] [service_name] Как правило, вам нужно запускать это как суперпользователь поэтому команды будут начинаться с sudo. КАК ПРОВЕРИТЬ, РАБОТАЕТ ЛИ СЛУЖБА В LINUX Чтобы проверить, активна ли служба или нет, выполните следующую команду: sudo systemctl status SERVICE_NAME Замените SERVICE_NAME на нужный сервис. В нашем случае мы будем брать за пример веб-сервер Apache. Интересный факт: в Ubuntu и других дистрибутивах на основе Debian служба Apache называется apache2.
Оглавление

Linux обеспечивает детальный контроль над системными службами через systemd с помощью команды systemctl. Службы могут быть включены, выключены, перезапущены, перезагружены или даже включены или отключены при загрузке. Если вы используете Debian, CentOSили Ubuntu, ваша система, вероятно, использует systemd.

Как запустить, остановить и перезапустить сервисы в Linux
Как запустить, остановить и перезапустить сервисы в Linux

Это руководство покажет вам, как использовать основные команды для запуска, остановки и перезапуска служб в Linux.

БАЗОВЫЙ СИНТАКСИС КОМАНДЫ SYSTEMCTL

Основной синтаксис для использования команды systemctl:

systemctl [command] [service_name]

Как правило, вам нужно запускать это как суперпользователь поэтому команды будут начинаться с sudo.

КАК ПРОВЕРИТЬ, РАБОТАЕТ ЛИ СЛУЖБА В LINUX

Чтобы проверить, активна ли служба или нет, выполните следующую команду:

sudo systemctl status SERVICE_NAME

Замените SERVICE_NAME на нужный сервис.

В нашем случае мы будем брать за пример веб-сервер Apache.

Интересный факт: в Ubuntu и других дистрибутивах на основе Debian служба Apache называется apache2. В CentOS и других дистрибутивах RedHat служба Apache называется httpd или httpd.service

sudo systemctl status apache2

Так мы проверили состояние Apache. Выходные данные показывают, что служба активна (работает), как на рисунке ниже:

status
status

КАК ПЕРЕЗАПУСТИТЬ СЕРВИС

Чтобы остановить и перезапустить службу в Linux, используйте команду:

sudo systemctl restart SERVICE_NAME

Где SERVICE_NAME - имя вашего сервиса.

После выполнения команды ваш сервис должен снова заработать. Вы можете проверить состояние с помощью команды status

Для перезапуска нашего сервера Apache используем:

sudo systemctl restart apache2

restart
restart

КАК ПЕРЕЗАГРУЗИТЬ КОНФИГУРАЦИОННЫЕ ФАЙЛЫ СЕРВИСА

Чтобы служба перезагрузила свои файлы конфигурации, введите в терминале следующую команду:

sudo systemctl reload SERVICE_NAME

После перезагрузки проверьте ее состояние командой status для подтверждения.

В нашем примере мы перезагрузили Apache, используя:

sudo systemctl reload apache2

reload
reload

КАК ЗАПУСТИТЬ СЕРВИС

Чтобы запустить службу в Linux вручную, введите в терминале следующее:

sudo systemctl start SERVICE_NAME

Например, команда для запуска службы Apache:

sudo systemctl start apache2

КАК ОСТАНОВИТЬ СЕРВИС

Чтобы остановить активную службу в Linux, используйте следующую команду:

sudo systemctl stop SERVICE_NAME

Для нашего апача используем команду

sudo systemctl stop apache2

Проверьте, остановился ли сервис с помощью команды status. Вывод должен показать, что сервис неактивен - inactive (dead)

stop
stop

КАК ВКЛЮЧИТЬ СЕРВИС ПРИ ЗАГРУЗКЕ

Чтобы настроить службу для запуска при загрузке системы, используйте команду:

sudo systemctl enable SERVICE_NAME

Чтобы включить Apache при загрузке системы, выполните команду:

sudo systemctl enable apache2

enable
enable

КАК ОТКЛЮЧИТЬ СЕРВИС ПРИ ЗАГРУЗКЕ

Вы можете запретить запуск службы при загрузке с помощью команды:

sudo systemctl disable SERVICE_NAME

Например:

sudo systemctl disable apache2