Há uma infinidade de possibilidades para montar compartilhamentos no Login no OSX. Estou fazendo isso quando uma conexão de rede for restaurada.
Idealmente:
- Monte o compartilhamento
- conexão perdida
- conexão recuperada
- Monte o compartilhamento novamente (se possível), caso contrário, não o faça - ou seja, em um local diferente.
Alguma idéia de como fazer isso acontecer?
Estou explorando a possibilidade de usar compartilhamentos NFS do DroboFS, mas prefiro mantê-los no CIFS/AFP.
Sugestões são bem-vindas.
Obrigado.
Responder1
Você poderia tentar algo assim:
last_status=0
while :
do
ping -t 1 google.com > /dev/null 2>&1
exit_status=$?
if [[ $exit_status == 0 && $last_status != 0 ]]; then
last_status=$exit_status
osascript -e 'tell application "Finder"' -e 'eject "share"' -e 'end tell'
osascript -e 'tell application "Finder"' -e 'open location "smb://server/share"' -e 'end tell'
else
last_status=$exit_status
fi
sleep 5
done
Verificamos a conexão com a Internet fazendo ping no Google. Você pode alterá-lo para um IP local se não quiser testar a conectividade com a Internet. Se pudermos fazer ping no Google, dizemos ao Finder para ejetar a montagem antiga e montar o compartilhamento SMB novamente, caso contrário, suspenda por 5 segundos.
Está muito sujo mas faz o que você quer, há muito espaço para melhorias.