Назад | Перейти на главную страницу

mount.nfs: сервер запрещает доступ во время монтирования

В моей системе Ubuntu у меня есть эта строка в / etc / fstab:

myserver:/home/me /mnt/me nfs rsize=8192,wsize=8192,timeo=14,intr

Когда я делаю

sudo mount -a

Я получил:

mount.nfs: access denied by server while mounting myserver:/home/me

Как я могу диагностировать эту проблему? Сервер nfs также является Ubuntu.

Дополнительные сведения: я могу без проблем смонтировать этот общий ресурс nfs от других клиентов Ubuntu в той же сети. Однако проблемный клиент отличается тем, что он работает внутри VirtualBox в системе Windows. Я могу нормально пинговать "myserver" с проблемного клиента.

РЕДАКТИРОВАТЬ: / etc / exports на "myserver":

/home/me *(rw,all_squash,async,no_subtree_check,anonuid=1000,anongid=1000)

/etc/hosts.allow и /etc/hosts.deny на "myserver" - это все комментарии. И имейте в виду, что я могу нормально подключаться к другим клиентам в той же сети.

Нашел!

В одном из журналов была строка:

refused mount request from 192.168.1.108 for /home/me (/home/me): illegal port 64112

Я погуглил и обнаружил, что, поскольку порт превышает 1024, мне нужно добавить параметр «небезопасный» в соответствующую строку в / etc / exports на сервере. Как только я это сделал (и запустил exportfs -r), команда mount -a на клиенте заработала.

Этот вопрос связан с настройкой сети для вашей виртуальной машины.

По умолчанию с VirtualBox у вас есть NAT сеть. В результате перевод порта.

Шаг за шагом это дает:

  1. Клиент NFS использует зарезервированный порт (<1024 ... который может быть открыт только пользователем root -> защищенный)
  2. Virtualbox выполняет преобразование портов (NAT) -> порт клиента теперь больше 1024
  3. Сервер NFS отклоняет соединение для этого незащищенного порта.

Как упоминал @JoelFan, одним из исправлений было бы установить insecure вариант к серверу. Это быстрое решение, но ... небезопасно;)

Что исправило случай для меня (безопасным образом), так это изменить с NAT к Мост сеть для этого vm. Таким образом, у моей виртуальной машины есть собственный IP-адрес, и перевод порта не выполняется.

Угадайте, что ... для меня источником точно такой же ошибки было несоответствие версий моего клиента NFS и сервера.

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

Проблема была решена добавлением опции монтирования nfsver на стороне клиента:

server:/path   /mount/point   nfs   nfsvers=3   0 0

Вы проверили правильность разрешения имен на сервере для клиента, который пытается подключиться (и он указан в файле экспорта)?

проверьте файлы hosts.allow и hosts.deny и правильно ли введен клиент. если это не поможет, опубликуйте файл экспорта.

На случай, если это поможет другим, у меня есть Synology NAS, и точка NFS фактически добавила еще один элемент в путь.

Я пытался смонтировать «xxx.xxx.xxx.xxx/folder», так как это то, что я делаю в Windows. Но для Ubuntu с NFS мне пришлось использовать «xxx.xxx.xxx.xxx/volume1/folder».