Probleme beim Starten des systemd-Dienstes (Jessie)

Probleme beim Starten des systemd-Dienstes (Jessie)

Ich habe einen systemd-Dienst, den ich ausführen muss, bevor das Netzwerk gestartet wird, und ich habe ein wenig Probleme damit. Demnach: Ausführen von Diensten, nachdem das Netzwerk aktiv istIch muss verwendenVorher=Netzwerk-Vorher.Ziel, mein Dienst startet jedoch nicht.

Abhängigkeiten:

root@server:~# systemctl list-dependencies my-script --reverse
my-script.service
● └─network-pre.target (has a red dot next to it)

Die eigentliche Einheit selbst:

[Unit]
Description=My script
Before=network-pre.target
Wants=network-pre.target

[Service]
ExecStart=/etc/my-script
Type=oneshot
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Irgendwelche Vorschläge?

Antwort1

Entfernen Sie die Zeile Wants=, da Sie etwas Unmögliches auflisten: Starten Sie den Dienst vor network-pre.target, aber auch danach (Wants). Die Einheit sollte also folgendermaßen lauten:

[Unit]
Description=My script
Before=network-pre.target

[Service]
ExecStart=/etc/my-script
Type=oneshot
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Antwort2

Das hat bei mir funktioniert:

[Unit]
Description=@CPACK_PACKAGE_DESCRIPTION_SUMMARY@

Before=network-pre.target
Wants=network-pre.target

DefaultDependencies=no
Requires=local-fs.target
After=local-fs.target

[Service]
Type=oneshot

ExecStart=/sbin/my-script.sh

RemainAfterExit=yes

[Install]
WantedBy=network.target

verwandte Informationen