我与 NFS 共享一个文件夹,其中包含其他 fstab 安装的驱动器,而客户端 nfs 无法仅遍历最深的安装。
IE: /home/用户/图片是一个常规目录,其中包含/相机1
/home/user/pictures/camera1 是 GPT 格式的 3TiB 驱动器,通常作为 ext4 安装在服务器 /etc/fstab 中
它当前与 samba 共享,但似乎共存,并且在服务器和客户端上运行良好,这可能是冲突。
但是当我用 NFS 安装它之后,我在查看 /camera1 时遇到了一个不寻常的问题:就好像它根本没有安装一样。相反,它显示服务器的预安装空目录从 NFS 连接的客户端查看时。
我找到 - rmount(注意前面的“r”) - 与所有示例中建议的 --mount 不同 - 使服务器 NFS 导出目录 (/mnt/nfs/...) 正确地一直遍历到 /camera1 。但客户端仍然没有挂载 /camera1 - 它挂载 /~pictures 没问题,但 /camera1 被视为空文件夹:就像 /camera1 已在服务器上卸载一样。
出于演示目的,在安装任何内容之前,服务器目录中有一个 UNMOUNTED.txt:~/pictures/camera1/。因此,当我安装驱动器时,UNMOUNTED.txt 会被服务器上的camera1 驱动器的正确目录列表替换。如预期。
**但是*在客户端上我仍然看到.../camera1/UNMOUNTED.txt
笔记:
/ - 是一个驱动器
/家- 是第二个驱动器
/home/用户/图片- 是 /home 驱动器上的文件夹
/home/用户/图片/camera1- 是第三个驱动器
所有工作都按预期在服务器上挂载常规 ext4 fstab,只有“camera1”挂载在通过 NFS 远程查看时出现问题。
我将运行我的设置,以防万一我出错了。
服务器(库班图 14.10)
没有人、没有团体存在,所以..
# mkdir -p /mnt/nfs/pictures
# chown -R nobody:nogroup /mnt/nfs
# chmod 777 /mnt
# chmod 777 /mnt/nfs
# chmod 777 /mnt/nfs/pictures
好的
# mount --bind /home/user/pictures /mnt/nfs/pictures
挂载 /mnt/nfs/pictures,但 /mnt/nfs/pictures/相机1是空的。这就是问题的症结所在。
# mount --rbind /home/user/pictures /mnt/nfs/pictures
(r这次绑定)按预期工作并且 /mnt/nfs/pictures/相机1已有人居住
那么那么..
/etc/idmapd.conf已经有了正确的映射,并且我确认两台机器的所有内容都相同。
我编辑过/etc/出口:
/mnt/nfs/ <SERVER-IP>(rw,fsid=root,no_subtree_check)
/mnt/nfs/pictures <SERVER-IP>(rw,no_subtree_check,sync,no_root_squash)
好的
sudo exportfs -rav
好的
sudo service nfs-kernel-server restart
也可以。
那么接下来就..
客户(库班图 16.04)
(使用 SSH,但物理访问它具有相同的结果)
$ showmount -e <SERVER-IP>
Export list for <SERVER-IP>:
/mnt/nfs/pictures <SERVER-IP>
/mnt/nfs <SERVER-IP>
正确显示共享
然后
$ ls -al /home/user/pictures
total 8
drwxr-xr-x 2 user user 4096 Aug 23 23:47 .
drwxr-xr-x 36 user user 4096 Aug 23 23:49 ..
确认目录存在且为空,因此我挂载共享:
# mount -t nfs <SERVER-IP>:/pictures /home/user/pictures
or
# mount -t nfs <SERVER-IP>:/mnt/nfs/pictures /home/user/pictures
....same diff
好的
...但...
$ ls -al ~/pictures/camera1
total 16
drwxrwxr-x 2 user user 4096 Nov 12 2015 .
drwxrwxrwx 6 user user 4096 Aug 24 12:31 ..
-rw-rw-r-- 1 user user 21 Nov 12 2015 UNMOUNTED.txt
-rwxr-xr-x 1 user user 213 Nov 12 2015 .directory
当然啦应该完全由以其他方式安装且功能正常的“camera1”驱动器安装座的内容填充。
因为——r绑定有助于服务器端我试图在客户端利用它,但是
# mount --rbind -t nfs <SERVER-IP>:/pictures /home/user/pictures
只是失败了,告诉我我的语法是错误的......尽管在帮助/手册中列出了 --rbind 有效。
帮助?