Назад | Перейти на главную страницу

systemd: myservice.service против myservice.target

В чем разница между файлом определения службы systemd

[Unit]
Description=My service...
After=zookeeper.service

и

[Unit]
Description=My service...
After=zookeeper.target

zookeeper - это еще одна служба, определенная в другом служебном файле, но каково значение расширения .service против .target. Есть разница?

Услуга:

Файл конфигурации модуля, имя которого заканчивается на .service, кодирует информацию о процессе, который контролируется и контролируется systemd.

Цель:

Файл конфигурации модуля, имя которого заканчивается на «.target», кодирует информацию о целевом модуле systemd, которая используется для группировки модулей и в качестве хорошо известных точек синхронизации во время запуска.

Оба они относятся к unit configuration files, которые:

Файл конфигурации модуля кодирует информацию о службе, сокете, устройстве, точке монтирования, точке автоматического монтирования, файле подкачки или разделе, цели запуска, отслеживаемом пути файловой системы, таймере, управляемом и контролируемом systemd ( 1), срез управления ресурсами или группа процессов, созданных извне.

Ссылка: страницы руководства для systemd.service, systemd.target, и systemd.unitсоответственно.

Также, что касается самих файлов конфигурации; услуги нужны:

Файлы службы должны включать раздел «[Служба]», в котором содержится информация о службе и процессе, который она контролирует.

Такого требования для target файлы конфигурации. Фактически, у целей нет никаких опций, специфичных для целей; элементы настроены в общем [Unit] и [Install] разделы.

Да. Видеть man systemd.service и man systemd.target для документации по каждому типу systemd Блок.

На вашем systemd вы можете найти файлы и просмотреть, что systemd директивы, которые они содержат, при условии, что оба существуют:

 locate zookeeper.service
 locate zookeeper.target