Ситуация:
Домашняя сеть: всё на (k)ubuntu 10.10 - server, desktop, netbook.
DHCP сервер отдаёт опцию dhcp-option=155,«/mnt/share»
Которую принимают клиенты и обрабатывают в /etc/dhcp3/dhclient-exit-hooks.d/ - монтируют эту шару. То есть если нетбук в домашней сети получил эту опцию то он монтирует шару, если он где-то шляется то нет :)
Теперь если нетбук заснул и проснулся дома то всё ОК, а вот если он проснулся не дома, то на нем наблюдается жеский тупняк при попытке открыть директорию /mnt/
umount /mnt/share говорит device busy и т.д.
В качестве решения был закинут скрипт /usr/lib/pm-utils/sleep.d/41nfs_umount который при засыпании делает umount -a -t nfs Но осталось ощущение костыльности :) может есть более корректный способ заставить систему отмонтировать шары nfs при засыпании?
По идее более универсальным способом будет обрабатывать в /etc/network/if-pre-down.d/ но возникает вопрос как проверить связность с сервером кроме как ping | grep? Потому что в теории нетбук может быть подключен в сеть имеющую узел с таким же айпишником, но это будет не мой домашней сервер. И это при условии что нетбук может соединяться с сервером по трем разным интерфейсам ( eth0, wlan0 и даже tap0 по VPN через wifi из кафе) по первым двум зачастую одновременно.