Mam nieco ciekawą konfigurację: serwer z wieloma zdalnymi serwerami NFS zamontowanymi w folderze, a następnie ten folder jest ponownie eksportowany przez Sambę. Pomyśl o tym jak o udostępnianym proxy, przechowującym wszystkie udostępnione foldery w jednym miejscu.
Mój problem polega jednak na tym, że za każdym razem, gdy jeden z montowań ulegnie awarii (serwer zrestartowany, usługa zrestartowana, zewnętrzny dysk twardy, który eksportował serwer usunięty itp.) Każda próba odczytania bloków montowania na zawsze. Oznacza to również, że działanie ls
w tym katalogu zawiesza się, a użytkownicy łączący się przez Sambę również się zawieszają. Spowodowało to również kilkakrotne zablokowanie jednego z moich zadań cron, co prawie zawiesiło serwer, ponieważ miał setki zablokowanych procesów. Staje się to bardzo denerwujące, ponieważ zwykle muszę przywołać terminal, który nie czeka na ls
zakończenie (nie mogę go anulować), uruchomić for i in *; do sudo umount -l -f $i; done;
, mieć nadzieję, że działa, naprawić problem, a następnie zamontować wszystko ponownie.
Czy istnieje sposób na zamontowanie udziału NFS z zastrzeżeniem, że jeśli połączenie z jakiegoś powodu nie powiedzie się (najlepiej z okresem ponownej próby), to samo podłączenie się odinstaluje lub przynajmniej nie blokuje?
/etc/fstab
?Odpowiedzi:
Zwykle podczas montowania NFS dobrze jest ustawić flagi podobne do tych:
Możesz dodatkowo ustawić:
co powinno pozwolić limitowi czasu NFS na przekroczenie limitu czasu i uniemożliwić dostęp do katalogu, jeśli serwer NFS przerwie połączenie, zamiast czekać na ponowienie prób.
Spójrz na ten link, aby uzyskać więcej informacji o opcjach montowania NFS
źródło