10

У меня проблема с подключением общего ресурса NFS, который я не могу решить, что сводит меня с ума. Это ситуация:

Три машины участвуют:
Хост A: mandrake, IP 192.168.1.4, NFS-сервер
Хост B: athlon64, IP 192.168.1.64, клиент NFS
Хост С: lap-fzs-2, IP 192.168.1.27, клиент NFS

На хосте A работает сервер NFS, который экспортирует каталог, который монтируется на хосте B. Это работает безупречно и работает с незапамятных времен. Без проблем. Теперь хост C входит в картину. Ubuntu 12.04 LTS, современная система. Я попытался смонтировать тот же общий ресурс с хоста A, но получил ошибку «Отказано в разрешении»:

root@lap-fzs-2:~# mount -t nfs mandrake:/data /data -onfsvers=2
mount.nfs: access denied by server while mounting mandrake:/data

Тот факт, что он работает между хостами A и B, должен доказать, что экспорт NFS сам по себе работает. Вот информация, которую я могу дать, которая заставляет меня думать, что это должно работать. Может быть, кто-то видит то, чего нет у меня, и знает, почему это не работает на новом хосте C.

Экспорт сервера:

[root@mandrake /root]# cat /etc/exports
/suse 192.168.1.0/16(ro,no_root_squash)
/data 192.168.1.0/24(rw)
#/data3 192.168.2.0/24(rw)
#/data 192.168.2.0/16(rw,all_squash,anonuid=500,anongid=500)
#/data3 192.168.2.0/16(rw,all_squash,anonuid=500,anongid=500)

[root@mandrake /root]# exportfs
/suse           192.168.1.0/16
/data           192.168.1.0/24

Portmapper запущен, экспорт известен и смонтирован хостом B "athlon64".

[root@mandrake /root]# showmount -e
Export list for mandrake:
/data 192.168.1.0/24
/suse 192.168.1.0/16
[root@mandrake /root]# showmount -a
All mount points on mandrake:
atlhon64.acme.local:/data

Когда хост athlon64 монтирует общий ресурс NFS, журнал сервера показывает успех:

Feb 11 20:06:46 mandrake mountd[460]: authenticated mount request from atlhon64.acme.local:770 for /data (/data)

Но когда хост C пытается смонтировать тот же общий ресурс, журнал сервера показывает:

Feb 11 20:12:42 mandrake mountd[460]: refused mount request from lap-fzs-2 for /data (/): no export entry

Хост C видит сервер, достигает portmapper и nfsd, но не работает с разрешениями.

root@lap-fzs-2:~# showmount -e 192.168.1.4
Export list for 192.168.1.4:
/data 192.168.1.0/24
/suse 192.168.1.0/16


root@lap-fzs-2:~# mount -t nfs -v mandrake:/data /data -onfsvers=2,proto=udp
mount.nfs: timeout set for Mon Feb 11 21:49:23 2013
mount.nfs: trying text-based options 'nfsvers=2,proto=udp,addr=192.168.1.4'
mount.nfs: prog 100003, trying vers=2, prot=17
mount.nfs: trying 192.168.1.4 prog 100003 vers 2 prot UDP port 2049
mount.nfs: prog 100005, trying vers=1, prot=17
mount.nfs: trying 192.168.1.4 prog 100005 vers 1 prot UDP port 636
mount.nfs: mount(2): Permission denied
mount.nfs: access denied by server while mounting mandrake:/data

Я должен использовать NFSv2 на клиенте. Использование NFSv4 не удастся, так как сервер его не поддерживает. Не удается, так как он пытается подключиться через TCP напрямую к 2049, но порт не открыт. Никакого отступления не происходит. Использование NFSv3 приведет к несоответствию программы / версии RPC.

Что мне не хватает?

Обновить:
Все три машины находятся в одной локальной сети на одном коммутаторе. На хосте C отсутствует брандмауэр:

root@lap-fzs-2:~# iptables -vnL
Chain INPUT (policy ACCEPT 17 packets, 1853 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 20 packets, 5611 bytes)
 pkts bytes target     prot opt in     out     source               destination

Ни на хосте А:

[root@mandrake /root]# ipchains -L 
Chain input (policy ACCEPT):
Chain forward (policy ACCEPT):
Chain output (policy ACCEPT):

3 ответа3

1

В моем случае ответ -o верс = 3:

$ sudo mount -o vers=3 192.168.172.1:/A/DIR /mnt
  • NFS-сервер: Ubuntu Desktop 12.04 32-разрядный хост VMware
  • Клиент NFS: сервер Ubuntu 12.04, 64-разрядная гостевая виртуальная машина (режим только хоста)
1

Проверьте и посмотрите, совпадают ли UID и GUID для пользователей NFS на сервере и клиенте. Также убедитесь, что на сервере есть разрешение 777. Это мой /etc /exports на моем сервере для доступа моего клиента.

Создайте общий каталог NFS: (Создайте каждый сервер с IP, разделив пространство)

mkdir /var /nfs vim /etc /exports /var /nfs 10.180.82.250(rw, синхронизация, root_squash, anonuid = 530, anongid = 530, no_subtree_check)

0

11 февраля 20:12:42 mandrake mountd [460]: отклонен запрос на монтирование от lap-fzs-2 для /data (/): нет записи об экспорте

Поскольку в уведомлении об отказе сервера говорится, что для хоста C "нет записи об экспорте" , возможно, вам следует попробовать ввести в /etc/exports однозначную строку с явным именем хоста или полным IP-адресом для C.

Также попробуйте выполнить команду exportfs -a на сервере.
У меня часто возникают проблемы с доступом к моему NFS-серверу даже после перезагрузки. Явное выполнение команды exportfs -a является надежным решением (для меня).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .