systemd: convertir le chemin au format de nom d'unité systemd


10

Comment convertir des chemins arbitraires au systemdformat de nom de fichier d'unité?

Par exemple, comment convertir un chemin similaire /media/backupà media-backupafin de pouvoir arrêter le monteur automatique via:

systemctl stop media-backup.automount

La solution doit échapper les caractères spéciaux.


Existe-t-il une liste de ces chemins arbitraires ou voulez-vous convertir tous les chemins du système? Qu'as-tu essayé de faire?
mrc02_kr

Réponses:


23

Vous devez utiliser systemd-escapece qui est conçu explicitement pour cela:

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

-pspécifie que vous échappez à un chemin, et gère /, .et de ..manière appropriée. Les caractères spéciaux sont également traités correctement. Ainsi votre commande deviendrait

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

Les règles d'échappement sont décrites dans la systemd.unitpage de manuel.


Cela devrait fonctionner parfaitement. Étant donné que umount -lc'est dangereux , je suis surpris de voir que systemdparesseux démonte le point de montage avec cette commande.
Tom Hale
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.