Como tornar o mount --bind permanente?

22

Quando estou fazendo:

mount --bind dirone dirtwo

Após a reinicialização do sistema operacional, a ligação é perdida.

Estou verificando diretórios vinculados /proc/mounts

Como posso tornar essas ligações permanentes sem entupir /etc/fstab?

Aqui está uma entrada de /proc/mounts

/dev/disk/by-uuid/4f5082d7-aba2-4bc7-8d64-3bbb3d773aab /home/username/dir ext4 rw,relatime,data=ordered 0 0
Alexander Kim
fonte
1
Você precisa executar esse comando durante a inicialização (rc.local) ou colocar uma entrada no / etc / fstab. O que faz você pensar que isso está entupindo o / etc / fstab? , Isto é o que fstab é para, fstab é muito mais "limpo", em seguida, rc.local
Panther

Respostas:

31

O que você quer dizer com "entupir /etc/fstab"? O melhor lugar para colocar isso é /etc/fstab ; foi para isso que foi feito!

Tudo o que você precisa fazer é adicionar uma linha após a primeira montagem:

# <device>                                 <dir>                 <type>  <options>                 <dump>  <pass>
UUID=288a84bf-876c-4c4b-a4ba-d6b4cc6fc0d2  /mnt/device            ext4    defaults,noatime,nofail   0       2
/mnt/device                                /srv/binded_device     none    bind                      0       0
ryanmjacobs
fonte
Então você recomenda apenas copiar / colar de /proc/mountspara /etc/fstab?
Alexander Kim
Sim, isso deve funcionar. Basta copiar o original de montagem emount --bind
ryanmjacobs
Obrigado, mas mount --bindnão salvou /proc/mounts?
Alexander Kim
Não, acho que não; mas não deve ser muito difícil copiar a primeira montagem e adicionar a sua própria mount --bind.
Ryanmjacobs
assim como no seu exemplo, em vez de rw,relatime,data=ordereddigitar bind, certo?
21914 Alexander Alexander
19

A maneira mais fácil é montar - vincular o que você precisa

mount --bind /home/sda1/Windows/Users/Me/Dropbox ~/Dropbox

Em seguida, abra o mtab

sudo nano /etc/mtab

Copie sua linha como

/home/sda1/Windows/Users/Me/Dropbox /home/me/Dropbox none rw,bind 0 0

e cole no fstab para montar na reinicialização

sudo nano /etc/fstab

Se sua pasta estiver no disco montado, verifique se a linha de ligação vem após a montagem do disco

dgpro
fonte
2
essa deve ser a solução aceita.
Daksh Miglani
3

Outra solução (que é útil quando você estiver usando LVM e a resposta aceita não funcionará e alguns podem considerar mais útil, pois usa um pouco mais de lógica) estaria fazendo algo semelhante a isto:

Anexe o seguinte ao seu crontab
# crontab -l | cauda -1; cat / usr / sbin / montagem do compilador personalizado

@reboot /usr/sbin/custom-compiler-mount

Essencialmente, você usaria crond para executar um script na reinicialização

#!/bin/bash
( until [[ $( (mount |& grep vg0-homevol 2>&1 9<&1 > /dev/null 1<&9) ) ]] ; 
do 
sleep 1 
done & wait;mount -o rbind /home/linuxgeek/experimental/s3/gcc/ /gcc & ) & >/dev/null 
linuxgeek
fonte