Гостья
У меня есть хост под управлением Ubuntu 12.04 10.0.0.202
. Он предоставляет общий ресурс NFS для других компьютеров в сети. Вот содержание /etc/exports
:
/media/storagedrive 10.0.0.0/24(rw,sync,no_subtree_check)
Намерение здесь состоит в том, чтобы поделиться содержимым /media/storagedrive
других машин в сети в диапазоне IP 10.0.0.0 - 10.0.0.255
.
Рабочий клиент
Это правильно работает с клиентским компьютером, на котором 10.0.0.40
работает Ubuntu 13.10, известная как MattDev. Эта машина /etc/fstab
выглядит так:
UUID=8f8c838e-3ea2-457a-87f0-57b12dfab06c / ext4 errors=remount-ro 0 1
UUID=427089d4-46a2-432d-9df4-7016bdfc7df2 none swap sw 0 0
10.0.0.202:/media/storagedrive /mnt/NetworkStorageDrive nfs rsize=8192,wsize=8192,timeo=14,intr
И ls -al /mnt/
на этой машине выглядит так:
total 12K
drwxr-xr-x 3 root root 4.0K Feb 4 17:48 .
drwxr-xr-x 23 root root 4.0K Feb 5 08:44 ..
drwxrwxr-x 7 root plugdev 4.0K Feb 5 11:43 NetworkStorageDrive
Вывод id
выглядит так:
uid=1000(matt) gid=1000(matt) groups=1000(matt),4(adm),24(cdrom),27(sudo),30(dip),33(www-data),46(plugdev),112(lpadmin),124(sambashare)
Неработающий виртуальный клиент
У меня есть второй клиентский компьютер с Ubuntu 12.10 в качестве гостевой ОС на хост-компьютере Windows 7. Хост-машина находится в сети как 10.0.0.28
. Гостевая машина управляется Vagrant, используя VirtualBox 4.3.6 в качестве поставщика. Я позвоню хозяину Windows 7 AlexDevHost и гостю Ubuntu AlexDevGuest.
Запуск showmount -e 10.0.0.202
на AlexDevGuest производит:
Export list for 10.0.0.202:
/media/storagedrive 10.0.0.0/24
Тем не менее, когда я пытаюсь смонтировать общий ресурс, происходит сбой:
$ sudo mount 10.0.0.202:/media/storagedrive /mnt/NetworkStorageDrive
mount.nfs: access denied by server while mounting 10.0.0.202:/media/storagedrive
Поэтому я начал искать проблемы:
$ ls -alh /mnt/
total 12K
drwxr-xr-x 3 root root 4.0K Feb 5 12:23 .
drwxr-xr-x 26 root root 4.0K Feb 5 12:23 ..
drwxr-xr-x 2 root root 4.0K Feb 5 12:23 NetworkStorageDrive
$ id
uid=1001(vagrant) gid=1001(vagrant) groups=1001(vagrant)
$
Этот uid и gid отличается от пользователя matt на MattDev. Поэтому я передергивал uid для vagrant, поскольку я читал, что доступ к NFS контролируется путем сопоставления IP-адреса и идентификаторов uid. А сейчас:
$ id
uid=1000(vagrant) gid=1001(vagrant) groups=1001(vagrant)
$ sudo mount 10.0.0.202:/media/storagedrive /mnt/NetworkStorageDrive
mount.nfs: access denied by server while mounting 10.0.0.202:/media/storagedrive
$
По-прежнему безуспешно. Так что теперь у меня заканчиваются идеи.
- Что я делаю неправильно?
- Если часть uid верна, могу ли я проверить, что машина NFS-сервера видит мою попытку доступа как полученную
10.0.0.28
, а не какой-то другой IP-адрес вне допустимого диапазона?