
У меня есть NFS-сервер, который работает как общий файловый сервер в локальной сети.
Недавно из-за неисправности диска я потерял все данные, поэтому купил новые диски, переустановил последнюю версию Debian (jessie), скопировал обратно файлы конфигурации — и NFS больше не работает?!
Мой /etc/exports содержит:
/media/media *(rw,sync,no_subtree_check,all_squash,anonuid=31244,anongid=31451)
/media/private *(rw,sync,no_subtree_check,all_squash,anonuid=16830,anongid=10818)
Я сделал несколько перезагрузок, перезагрузил /etc/init.d/nfs-common, перезапустил /etc/init.d/nfs-kernel-server.
На стороне клиента у меня в /etc/fstab:
172.28.173.1:/media/media /media/MEDIA nfs rsize=8192,wsize=8192,timeo=14,soft,intr,rw,user,noatime,nodiratime 0 0
172.28.173.1:/media/private /mnt/nfs/private nfs rsize=8192,wsize=8192,timeo=14,soft,intr,rw,user,noatime,nodiratime 0 0
При монтировании файловой системы команда монтирования выполняется долго и завершается без печати чего-либо. Запуск "df" позже показывает:
df: ‘/media/MEDIA’: Stale NFS file handle
В системном журнале на клиенте я вижу:
2013-12-18T15:27:08.319605+01:00 h3po4 kernel: [ 363.398977] RPC: AUTH_GSS upcall timed out.
2013-12-18T15:27:08.319619+01:00 h3po4 kernel: [ 363.398977] Please check user daemon is running.
Но я понятия не имею, о каком демоне идет речь, зачем ему вообще нужен какой-то «пользовательский демон» и зачем нужен вызов AUTH_GSS — я хочу, чтобы доступ к общему ресурсу nfs в локальной сети был открыт на 100%.
Я убедился, что проблема не в брандмауэре (отключив брандмауэр для проверки).
Не думаю, что я когда-либо перенастраивал что-либо еще на сервере до сбоя диска, но я не уверен — машина проработала более 4 лет без проблем, так что я мог что-то изменить и забыть об этом.
Итак, я проверил еще кое-что.
Перед монтированием на клиенте каталог монтирования следующий:
drwxr-xr-x 2 root root 4096 maj 1 2013 MEDIA/
Но после "mount /media/MEDIA", ожидая завершения, я получаю:
ls: cannot access /media/MEDIA: Stale NFS file handle
d?????????? ? ? ? ? ? MEDIA/
Каталог на стороне сервера всегда «нормальный»:
drwxrwxrwx 2 media media 6 Dec 18 14:05 /media/media/
также exportfs работает отлично:
=# exportfs -v
/media/media <world>(rw,wdelay,root_squash,all_squash,no_subtree_check,anonuid=31244,anongid=31451,sec=sys,rw,root_squash,all_squash)
/media/private <world>(rw,wdelay,root_squash,all_squash,no_subtree_check,anonuid=16830,anongid=10818,sec=sys,rw,root_squash,all_squash)
и я могу видеть экспортированные файловые системы с клиента:
$ showmount -e blob
Export list for blob:
/media/private *
/media/media *