systemd: converte o caminho para o formato do nome da unidade systemd

9

Como faço para converter caminhos arbitrários em systemd formato de nome de arquivo da unidade?

Por exemplo, como eu poderia converter um caminho como /media/backup para media-backup para que eu pudesse parar o automounter via:

systemctl stop media-backup.automount

A solução deve escapar de caracteres especiais.

    
por Tom Hale 05.09.2017 / 18:18

1 resposta

19

Você deve usar systemd-escape que foi criado explicitamente para isso:

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

-p especifica que você está escapando de um caminho e lida com / , . e .. adequadamente. Caracteres especiais são tratados corretamente também. Assim seu comando se tornaria

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

As regras de escape estão descritas na systemd.unit página de manual

    
por 05.09.2017 / 18:38

Tags