Não monte automaticamente via fstab, use um crontab:
-
Defina seu
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á, presumivelmente você 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 obter um controle mais refinado, você pode escrever um script que: i) verifique se o servidor está on-line 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
ou o que você quiser, torne-o executável com chmod +x /usr/bin/check_mount
e adicione essa linha a /etc/crontab
* * * * * root /usr/bin/check_mount
Outra opção que merece atenção é autofs
que monta sistemas sob demanda assim que alguém tenta acessar eles.