systemd: Konvertiert den Pfad in das Systemd-Einheitennamenformat


10

Wie konvertiere ich beliebige Pfade in das systemdEinheitendateinamenformat?

Wie würde ich beispielsweise einen Pfad wie folgt konvertieren /media/backup, media-backupdamit ich den Automounter über Folgendes stoppen kann:

systemctl stop media-backup.automount

Die Lösung sollte Sonderzeichen entgehen.


Gibt es eine Liste dieser beliebigen Pfade oder möchten Sie jeden Pfad im System konvertieren? Was hast du versucht zu tun?
mrc02_kr

Antworten:


23

Sie sollten Folgendes verwenden systemd-escape, das explizit dafür ausgelegt ist:

systemd-escape -p --suffix=automount /media/backup

-pgibt an, dass Sie einen Weg sind entkommen, und Griffe /, .und in ..geeigneter Weise . Sonderzeichen werden ebenfalls korrekt behandelt. So würde Ihr Befehl werden

systemctl stop "$(systemd-escape -p --suffix=automount /media/backup)"

Die Escape-Regeln sind in der systemd.unitManpage beschrieben.


Dies sollte perfekt funktionieren. Angesichts der Tatsache, dass dies umount -lgefährlich ist , bin ich überrascht zu sehen, dass systemdLazy den Mountpoint mit diesem Befehl aufhebt .
Tom Hale
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.