Estou montando um compartilhamento de samba via /etc/fstab. Meu problema é que se eles forem desligados e eu os iniciar, a máquina que monta o compartilhamento é ativada primeiro e, portanto, o compartilhamento ainda não está disponível. Existe a opção de ele tentar montá-lo até que o compartilhamento esteja disponível?
O problema é que nesses compartilhamentos estão os dados que os aplicativos precisam para funcionar corretamente
Responder1
Não monte-o automaticamente via fstab, use um crontab:
Configure
fstab
para não montar o compartilhamento automaticamente//servername/sharename /media/windowsshare cifs noauto 0 0
Você pode ter várias outras opções lá, provavelmente já tem. A parte importante é adicionar o
noauto
que garante quenoauto do not mount when "mount -a" is given (e.g., at boot time)
Crie um cron job que seja executado a cada minuto e monte o compartilhamento, caso ainda não esteja montado. Adicione esta linha a
/etc/crontab
* * * * * root mount | grep windowsshare || mount /media/windowsshare
Dessa forma, o disco será montado assim que estiver disponível.
Para um controle mais refinado, você pode escrever um script que i) verifique se o servidor está online e ii) monte o compartilhamento, a menos que esteja montado. Você poderia então executar o script via cron:
#!/usr/bin/env sh
hostname_or_ip_address="1.2.3.4" ## add your WIndows host's name or IP here
if ping -c 1 -W 1 "$hostname_or_ip_address" >/dev/null 2>&1; then
mount | grep windowsshare || mount /media/windowsshare
fi
Salve esse script como /usr/bin/check_mount
quiser, torne-o executável chmod +x /usr/bin/check_mount
e adicione esta linha ao/etc/crontab
* * * * * root /usr/bin/check_mount
Outra opção que vale a pena investigar éautofs
que monta sistemas sob demanda assim que alguém tenta acessá-los.