Лекционный материал:

1. Работа с сервисами

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

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

Чаще всего в Linux дистрибутивах для инициализации сервисов используется демон Systemd. К Systemd-дистрибутивам относятся Ubuntu, Debian, Linux Mint, Fedora, openSUSE, Solus и другие.

В качестве примеров сервисов можно привести: веб-сервер Apache, Network Manager, файрвол Ufw и другие.

Чтобы всем этим управлять нужна основная служба - система инициализации, которая будет запускать службы Linux в нужный момент, следить чтобы они нормально работали, записывать сообщения логов, и самое главное позволять останавливать службы.

Система инициализации запускается и начинает свою работу (инициализировать службы) сразу после загрузки ядра. После запуска systemd собирает весь вывод службы в лог, и следит за ее работой, если служба аварийно завершилась, то автоматически ее перезапускает.

Служба в Systemd описывается файлом юнита, в нем описано что с ней нужно делать и как себя вести. Существуют такие типы служб:

Нас будут интересовать только service, и совсем немного target, но мы рассмотрели все остальные, чтобы вы смогли взглянуть на картину немного шире.