Der benutzerdefinierte systemd-Dienst wird nicht automatisch gestartet

Der benutzerdefinierte systemd-Dienst wird nicht automatisch gestartet

Ich habe ein Skript und einen Dienst geschrieben, um mein externes Seagate-Laufwerk beim Herunterfahren auszuschalten. Beim ersten Mal hat es funktioniert, aber wenn ich meinen Computer neu starte, wird es nicht aktiviert. Ich muss es vor dem Herunterfahren immer manuell starten, was den Zweck verfehlt. Vielleicht kann mir hier jemand helfen, den Dienst so einzurichten, dass er immer, wenn ich den Computer herunterfahre, auch das Laufwerk ausschaltet.

Skript:

#!/bin/sh

disk_uuid="MY-UUID-PLACEHOLDER"

udisksctl unmount -b /dev/disk/by-uuid/${disk_uuid} 
udisksctl power-off -b /dev/disk/by-uuid/${disk_uuid}

exit 0

Servicedatei:

[Unit] 
Description=Shut down external disks
DefaultDependencies=no
Before=shutdown.target reboot.target kexec.target halt.target

[Service] 
Type=oneshot ExecStart=/usr/sbin/power-off-disk.sh
RemainAfterExit=yes

[Install] 
WantedBy=halt.target kexec.target reboot.target shutdown.target

Protokolle von journalctl -u:

Feb 22 11:53:50 ace-desktop systemd[1]: Starting Shut down external disks...
Feb 22 11:53:50 ace-desktop power-off-disk.sh[9810]: Error connecting to the udisks daemon: GDBus.Error:org.freedesktop.DBus.Error.NoReply: Message recipient disconnected from message bus without replying
Feb 22 11:53:50 ace-desktop power-off-disk.sh[9880]: Error connecting to the udisks daemon: Error calling StartServiceByName for org.freedesktop.UDisks2: Transaction for udisks2.service/start is destructive (dev-sdb1.swap has 'stop' job queued, but 'start' is included in transaction).
Feb 22 11:53:50 ace-desktop systemd[1]: power-off-disk.service: Deactivated successfully.
Feb 22 11:53:50 ace-desktop systemd[1]: Finished Shut down external disks.

Also habe ich jetzt meine Servicedatei bearbeitet:

[Unit]
Description=Shut down external disks
DefaultDependencies=no
Before=udisks2.service shutdown.target reboot.target halt.target

[Service]
Type=oneshot
ExecStart=/bin/true
ExecStop=/usr/sbin/power-off-disk.sh
RemainAfterExit=no

[Install]
WantedBy=shutdown.target reboot.target halt.target

Es ändert jedoch nichts.

systemctl start power-off-disk

funktioniert, wenn es manuell aktiviert wird, aber nicht beim Herunterfahren. Für Hilfe wäre ich wirklich dankbar.

verwandte Informationen