Depois de fazer algumas pesquisas sobre unidades do systemd, encontrei dois tipos diferentes de unidade de montagem: o .mount
e o .automount
. A princípio, parecia lógico para mim que a automount
unidade montasse um mount
automaticamente. No entanto, como se vê, quando você habilita uma unidade de montagem:
systemctl enable media-mydisk.mount
Ele será montado automaticamente na inicialização. Eu sou um pouco novo no systemd, mas isso já está me incomodando há algum tempo. Eu também postei o código da unidade no final.
Então, minha principal pergunta é: por que alguém precisa de automount
s se pode apenas habilitar uma mount
unidade?
Aqui está o meu media-mydisk.mount
se isso faz alguma diferença:
[Unit]
Description=My disk
[Mount]
What=/dev/sdb1
Where=/media/mydisk
Type=ext4
Options=defaults
[Install]
WantedBy=multi-user.target
Pesquisei na web, mas não consegui encontrar nenhuma comparação entre usar um .automount
e simplesmente habilitar um.mount
A parte "auto" em
automount
não se refere ao processo de inicialização:automount
as unidades definem pontos de montagem que são montados sob demanda , ou seja, apenas quando são acessados.automount
as unidades são opcionais; mas, quando existem,mount
também devem existir unidades correspondentes. Os primeiros destinam-se a adicionar funcionalidades às instâncias existentes do último. Deman systemd.mount
:E, de
man systemd.automount
:Um caso de uso típico para
automount
unidades é montar sistemas de arquivos (por exemplo, em mídia remota ou removível ou criptografada) que não são necessários durante o processo de inicialização e podem deixá-lo lento, ou que podem estar indisponíveis na inicialização, mas que você ainda gosta de ter gerenciado por systemd.Um exemplo simples e apenas ilustrativo. Dada a
mnt-foo.mount
unidade(para simplificar,
foo
é apenas um arquivo regular formatado como ext4), e amnt-foo.automount
unidadeapós o último ser ativado (ou
enable
d, e o sistema reinicializado)você poderá verificar
/home/user/foo
se ainda não está montado em nenhum lugar—mount
dáe, de fato
/home/user/foo
, só é montado/mnt/foo
assim que você acessa o ponto de montagem: