У меня есть файл модуля, и я хочу изменить некоторые свойства. Мне удалось расширить все свойства, используя /etc/systemd/system/unitname.service.d/
каталог, но не могу получить WantedBy
недвижимость будет расширена.
Исходный файл объекта (deluged.service)
[Unit]
Description=Deluge Bittorrent Client Daemon
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
User=media
Group=media
ExecStart=/usr/local/bin/deluged -d -u 0.0.0.0
[Install]
WantedBy=multi-user.target
/etc/systemd/system/deluged.service.d/override.conf
[Unit]
BindTo=sys-subsystem-net-devices-tun0.device
After=sys-subsystem-net-devices-tun0.device
[Service]
ExecStart=
ExecStart=/usr/local/bin/deluged -d -i 10.10.10.1 -u 0.0.0.0
[Install]
WantedBy=
WantedBy=sys-subsystem-net-devices-tun0.device
Кажется, все работает правильно, кроме WantedBy
когда я бегу systemctl enable deluged
он все еще создал символическую ссылку в multi-user
и в новом месте ссылка не создается.
Я искал документацию по расширению / переопределению и не видел ничего, о чем говорилось бы WantedBy
поэтому я понятия не имею, можно ли его расширить. Я что-то делаю не так или это просто невозможно?
Systemd не поддерживает отвергая [Install]
раздел с дроп-файлами. Вам нужно создать файл замены вместо этого для этой услуги.
Точно так же Conflicts=
ключ в [Unit]
раздел не может быть отменено в файле drop-in.
В настоящее время я использую Systemd 237 и, похоже, принял во внимание переопределения раздела [install].
По крайней мере, ссылки создаются в соответствии с моим файлом drop-in.
/usr/lib/systemd/user/syncthing.service
[Unit]
Description=Syncthing - Open Source Continuous File Synchronization
Documentation=man:syncthing(1)
[Service]
ExecStart=/usr/bin/syncthing -no-browser -no-restart -logflags=0
Restart=on-failure
SuccessExitStatus=3 4
RestartForceExitStatus=3 4
# Hardening
SystemCallArchitectures=native
MemoryDenyWriteExecute=true
NoNewPrivileges=true
[Install]
WantedBy=default.target
/home/abe/.config/systemd/user/syncthing.service.d/override.conf
[Install]
WantedBy=
WantedBy=multi-user.target
systemctl --user включить syncthing.service
Created symlink /home/abe/.config/systemd/user/multi-user.target.wants/syncthing.service → /usr/lib/systemd/user/syncthing.service.