systemd: przekonwertuj ścieżkę na format nazwy systemd jednostki

10

Jak przekonwertować dowolne ścieżki na systemdformat nazw plików?

Na przykład, w jaki sposób miałbym przekonwertować ścieżkę, /media/backupaby media-backupmóc zatrzymać automounter poprzez:

systemctl stop media-backup.automount

Rozwiązanie powinno zawierać znaki specjalne.

Tom Hale
źródło
Czy istnieje lista dowolnych ścieżek lub czy chcesz przekonwertować każdą ścieżkę w systemie? Co próbowałeś zrobić?
mrc02_kr

Odpowiedzi:

23

Powinieneś użyć tego, systemd-escapeco zostało zaprojektowane specjalnie do tego:

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

-pOkreśla, że jesteś drogę ucieczki, a uchwyty /, .i ..we właściwy sposób. Znaki specjalne są również obsługiwane poprawnie. Tak stanie się twoje polecenie

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

Zasady ucieczki opisano na stronie systemd.unitpodręcznika.

Stephen Kitt
źródło
To powinno działać idealnie. Biorąc pod uwagę, że umount -ljest niebezpieczny , jestem zaskoczony widząc, że systemdleniwy odmontowuje punkt montowania za pomocą tego polecenia.
Tom Hale,