Montar automaticamente a unidade no plugue usando o systemd

2

Eu quero montar uma unidade com uma etiqueta específica automaticamente toda vez que ela for pugeada. Eu faço não quero usar qualquer outra ferramenta além de systemd , pois outras unidades dependem da montagem e devem ser iniciadas automaticamente.

O que eu tenho até agora:

/lib/systemd/system/mount-camera.mount

[Unit]
Description=the camera SDCard
StopWhenUnneeded=true
Before=copy-camera.service

[Mount]
What=LABEL=CAMERA
Where=/mount/camera
Type=vfat

[Install]
WantedBy=multi-user.target 

/lib/systemd/system/mount-camera.automount

[Unit]
Description=camera SDCard

[Automount]
Where=/mount/camera

[Install]
WantedBy=multi-user.target

Isso monta a unidade com êxito se eu cd no ponto de montagem. No entanto, quero que a unidade seja montada apenas porque a insiro, porque há um serviço que é iniciado pela unidade de montagem.

É possível conseguir isso usando o systemd? Se sim: como?

Se é impossível: existe alguma maneira de fazer isso com pouquíssimas etapas extras?

Nota

Eu sei que eu poderia adicionar um temporizador que cd s no ponto de montagem a cada x segundos - mas isso é realmente muito elegante, é?

    
por LittleByBlue 23.03.2018 / 13:09

2 respostas

0

Como @MarkStosberg apontou: parece que isso não é possível com systemd sozinho.

Como @rtaft apontou: vale a pena usar fstab

A solução é: Adicione uma entrada ao fstab e você está pronto para ir. Não há conflitos, systemd resolve os arquivos automaticamente.

Adicione a /etc/fstab :

LABEL=CAMERA                    /mount/camera auto user,rw,nofail 0 0

O serviço é iniciado conforme o esperado. Eu mantive os arquivos .automount e .mount unit.

    
por LittleByBlue 23.03.2018 / 14:37
1

Da leitura de man systemd.mount e man systemd.automount , parece que o que você quer não é possível systemd sozinho. Adicionar as regras do udev é a solução recomendada .

    
por Mark Stosberg 23.03.2018 / 14:17