我创build了一个nfs共享条目
mzhu@zeus:/share$ cat /etc/exports /share *(rw,async,insecure)
在本地文件系统中,执行/ ls中的'ls -al'。 输出是
mzhu@zeus:/share$ ls -al total 20 drwxrwxrwt 5 mzhu mzhu 4096 May 23 15:12 . drwxr-xr-x 25 root root 4096 Nov 6 2013 .. -rw-rw-r-- 1 mzhu mzhu 0 May 23 15:12 1 drwxrwxr-x 2 mzhu mzhu 4096 May 23 15:12 2 drwxrwxr-x 8 mzhu mzhu 4096 May 21 16:53 build drwxr-xr-x 54 mzhu mzhu 4096 May 21 19:15 team
然后我在同一台机器上安装nfs share到〜/ test。 装载输出是(我只删除IP信息)
zeus:/share on /home/mzhu/test type nfs (rw,vers=4,addr=xxxx,clientaddr=xxxx)
从NFS上执行'ls -al'。 输出是:
mzhu@zeus:~/test$ ls -al total 20 drwxrwxrwt 5 mzhu mzhu 4096 May 23 15:12 . drwxr-xr-x 32 mzhu mzhu 4096 May 23 15:30 .. -rw-rw-r-- 1 mzhu mzhu 0 May 23 15:12 1 drwxrwxr-x 2 mzhu mzhu 4096 May 23 15:12 2 drwxr-xr-x 2 root root 4096 Oct 20 2013 build drwxr-xr-x 2 root root 4096 Oct 21 2013 team
比较2个输出,你会发现,在本地文件系统中,'build'的时间戳和权限是
drwxrwxr-x 8 mzhu mzhu 4096 May 21 16:53 build
而在nfs共享(即使是同一台机器),'build'的时间戳和权限是
drwxr-xr-x 2 root root 4096 Oct 20 2013 build
他们拥有不同的权限,所有者,组和时间戳。
有没有人可以告诉我为什么区别? 或告诉我如何debugging/疑难解答这个问题?
PS当我第一次创buildnfs共享时,系统date/时间是2013年10月,但是我调整了date/时间并重启了机器。
Ubuntu发布信息:
mzhu@zeus:/share$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 12.04.2 LTS Release: 12.04 Codename: precise
RPCINFO:
mzhu@zeus:~/test$ rpcinfo -p localhost program vers proto port service 100000 4 tcp 111 portmapper 100000 3 tcp 111 portmapper 100000 2 tcp 111 portmapper 100000 4 udp 111 portmapper 100000 3 udp 111 portmapper 100000 2 udp 111 portmapper 100024 1 udp 54306 status 100024 1 tcp 48737 status 100021 1 udp 42616 nlockmgr 100021 3 udp 42616 nlockmgr 100021 4 udp 42616 nlockmgr 100021 1 tcp 55986 nlockmgr 100021 3 tcp 55986 nlockmgr 100021 4 tcp 55986 nlockmgr 100003 2 tcp 2049 nfs 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100227 2 tcp 2049 100227 3 tcp 2049 100003 2 udp 2049 nfs 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs 100227 2 udp 2049 100227 3 udp 2049 100005 1 udp 59947 mountd 100005 1 tcp 46390 mountd 100005 2 udp 38311 mountd 100005 2 tcp 57959 mountd 100005 3 udp 55855 mountd 100005 3 tcp 50799 mountd
编辑:
mzhu@zeus:/share$ mount /dev/sda1 on / type ext4 (rw,errors=remount-ro) proc on /proc type proc (rw,noexec,nosuid,nodev) sysfs on /sys type sysfs (rw,noexec,nosuid,nodev) none on /sys/fs/fuse/connections type fusectl (rw) none on /sys/kernel/debug type debugfs (rw) none on /sys/kernel/security type securityfs (rw) udev on /dev type devtmpfs (rw,mode=0755) devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620) tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755) none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880) none on /run/shm type tmpfs (rw,nosuid,nodev) /dev/sdb1 on /share/build type ext4 (rw) /dev/sdc1 on /share/team type ext4 (rw) binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev) rpc_pipefs on /run/rpc_pipefs type rpc_pipefs (rw) cpddae:/cpddae/images on /mnt/cpddae type nfs (rw,addr=xxxx) gvfs-fuse-daemon on /var/lib/lightdm/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=lightdm) xxxx:/share on /mnt/share type nfs (rw,addr=xxxx) nfsd on /proc/fs/nfsd type nfsd (rw) zeus:/share on /home/mzhu/test type nfs (rw,vers=4,addr=xxxx,clientaddr=xxxx)
所有者的差异是由于不同的UID和GID。 如果你在这两个系统中没有相同的UID作为mzhu,那么这个共享将会被删除。
你能告诉我们山的输出吗? 如果您在/ share / build和/ share / team上有进一步的文件系统,则这是预期的行为 – 本地ls将会看到挂载的文件系统,NFS客户端将只能看到挂载点目录。 要获得相同的视图,您还需要共享较低的文件系统并将其挂载到客户端上。
编辑:你已经添加的mount输出证实了我的假设:这里有三卷,/ share是sda1的一部分,/ share / build是sdb1,/ share / team是sdc1。 date显然是在2013年10月,当你在sda1上为sdb1和sdc1创build挂载点时,现在你已经挂载了它们,你不能再从本地系统看到这些目录。 但是,在NFS客户端上,未安装额外的卷,您可以看到原始的装入点。 您可以通过在/home/mzhu/test/build创build文件和目录来探索这个问题 – 它们不会显示在/ share / build中,而是使用sda1中的空格。