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

systemctl enable кажется успешным, но модуль не установлен по требованию на [Install] WantedBy

Довольно новичок в systemd, поэтому, скорее всего (и, надеюсь), не хватает чего-то тривиального. Заранее спасибо.

Я пытаюсь включить службу (bees btrfs dedup; файл ниже), но enable/[Install] не имеет никакого эффекта ?.

Я запускаю следующий, полный вывод вставлен, enable вроде получается. Я не вижу ничего связанного в journalctl. Сначала добавил файл модуля /etc/systemd/system/beesd@.service (перечислено ниже)

# systemctl daemon-reload
# echo $?
0
# systemctl enable beesd@.service # <-- I believe I don't need an '@name' just '@' here? 
# echo $?
0
# systemctl status beesd@.service
Failed to get properties: Unit name beesd@.service is neither a valid invocation ID nor unit name.

также я не вижу ни одного basic.target.wants/ в /usr/lib/systemd/system/; но заметьте, многие вещи WantedBy=basic.target ... так это может быть актуально?

Вот файл модуля, который я mvd к /etc/systemd/system/beesd@.service перед запуском вышеуказанного

[Unit]
Description=Bees (%i)
Documentation=https://github.com/Zygo/bees
After=sysinit.target

[Service]
Type=simple
ExecStart=/usr/sbin/beesd --no-timestamps %i
CPUAccounting=true
CPUSchedulingPolicy=batch
CPUWeight=12
IOSchedulingClass=idle
IOSchedulingPriority=7
IOWeight=10
KillMode=control-group
KillSignal=SIGTERM
MemoryAccounting=true
Nice=19
Restart=on-abnormal
StartupCPUWeight=25
StartupIOWeight=25

[Install]
WantedBy=basic.target

Я считаю, что нашел причину;

Вышеупомянутый файл модуля представляет собой шаблон, обозначенный @; Я думал, что могу создать его экземпляр без имени экземпляра ... но похоже, что это неправильно. Если я дам ему имя, он будет установлен должным образом.

Обратите внимание, что я пропустил %i в модульном файле; которое является именем экземпляра; поэтому, даже если он правильно установлен с пустым именем (я думал, будет по умолчанию), скрипт / модуль все равно, вероятно, потерпит неудачу

Если у вас похожие проблемы, это был лучший исчерпывающий systemd прохождение: https://www.digitalocean.com/community/tutorials/understanding-systemd-units-and-unit-files