Ich möchte mit einer Unit btrfs-scrub starten und auch möglicherweise vorzeitig stoppen.
Die zugehörigen Befehle lauten
Code: Alles auswählen
/bin/btrfs scrub start -Bd <Mountpoint>
Wenn ich das als ExecStart einfüge, läuft scrub auch bis zum Ende durch.
Ein
Code: Alles auswählen
systemctl stop btrfs-scrub.service
btrfs scrub muss man auch mit cancel unterbrechen.
Also ein
Code: Alles auswählen
ExecStop=/bin/btrfs scrub cancel <Mountpoint>
Aber läuft das service bis zum Ende durch, fällt die Unit in den Failed-Zustand, da ExecStop= aufgerufen wird, aber btrfs scrub ja schon beendet ist.
Muss ich eine eigene Unit zum stoppen von btrfs scrub einrichten (wie ich im Archlinus-Forum fand), oder gibt es eine Option in einer Service-Unit, wie man ExecStop beim Beenden ohne einem Fehler von ExecStart überspringen kann? Ich finds in der Doku nicht.
lg scientific