Принять меры, если удаленный сервер отвечает на пинг

У меня дома есть сетевое хранилище (NAS), где я храню почти все свои медиа-материалы (песни, видео и т. Д.). Я хотел бы автоматически подключать его к локальному каталогу в своей записной книжке при каждом входе в систему дома, поэтому перед подключением мне нужно выполнить пинг, чтобы проверить, отвечает ли он (что означает, что я дома).

У меня уже есть скрипт для его монтирования (см. Ниже), но у меня есть два вопроса:

1) Как использовать ответ от ping, чтобы увидеть, отвечает ли он? Я считаю, что мне нужно использовать grep вместе с командой ping, но, поскольку я новый пользователь *nix, я еще не очень хорошо с ней обращаюсь.

2) Где лучше всего поставить этот скрипт?

У меня есть команда монтирования:

sudo mount -t cifs //myIpAddress/remoteDir /media/MyLibrary -o username=myUsername,password=myPassword,domain=myDomain,iocharset=utf8,file_mode=0777,dir_mode=0777

Спасибо!

1 ответ

Решение

Нет необходимости в grep или чем-то подобном, просто сделайте это:

ping -c 4 foo && sudo mount ...

Это в основном использует тот факт, что ping возвращает true, если ping работает, -c ограничивает его до 4 ping перед возвратом. Вы также можете сделать что-нибудь, если ping не сработает так:

ping -c 4 foo || echo "FAILED!"

Еще одна вещь, которую следует учитывать, это то, почему вы монтируете при входе в систему, а не в своем fstab, есть несколько хороших руководств по подключению хранилища файлов smb онлайн:

https://help.ubuntu.com/community/Samba/SambaClientGuide

http://www.mattvanstone.com/2006/06/automatically_mounting_smb_sha/

Другие вопросы по тегам