Um mesmo arquivo exibe data e hora diferentes entre o sistema de arquivos local e o NFS

2

Eu criei uma entrada de compartilhamento nfs

mzhu@zeus:/share$ cat /etc/exports
/share  *(rw,async,insecure)

No sistema de arquivos local, execute 'ls -al' em / share. A saída é

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

Depois montei o compartilhamento nfs em ~ / test na mesma máquina . A saída de montagem é (eu só removo as informações de IP)

zeus:/share on /home/mzhu/test type nfs (rw,vers=4,addr=x.x.x.x,clientaddr=x.x.x.x)

Frome o NFS, execute 'ls -al'. A saída é:

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

Compare as 2 saídas, você encontrará, no sistema de arquivos local, a data e a hora de 'build' é

drwxrwxr-x  8 mzhu mzhu 4096 May 21 16:53 build

enquanto em nfs share (até mesmo a mesma máquina), a data e a permissão de 'build' são

drwxr-xr-x  2 root root 4096 Oct 20  2013 build

Eles têm diferentes permissões, proprietário, grupo e hora.

Existe alguém que possa me dizer por que a diferença? Ou me diga como depurar / solucionar esse problema?

P.S. Quando criei o compartilhamento nfs na primeira vez, a data / hora do sistema é outubro de 2013, mas ajustei a data / hora e reiniciei a máquina.

A informação de lançamento do 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

EDITAR:

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=x.x.x.x)
gvfs-fuse-daemon on /var/lib/lightdm/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=lightdm)
x.x.x.x:/share on /mnt/share type nfs (rw,addr=x.x.x.x)
nfsd on /proc/fs/nfsd type nfsd (rw)
zeus:/share on /home/mzhu/test type nfs (rw,vers=4,addr=x.x.x.x,clientaddr=x.x.x.x)
    
por Landy 23.05.2013 / 09:53

2 respostas

0

A diferença no proprietário deve-se a diferentes UID e GID. Se você não tem o mesmo UID para o mzhu em ambos os sistemas, no compartilhamento ele irá cair para root.

    
por 24.05.2013 / 14:19
0

Você pode nos mostrar a saída de mount ? Este é o comportamento esperado se você tiver mais sistemas de arquivos em / share / build e / share / team - o local ls verá o sistema de arquivos montado, o cliente NFS verá apenas os diretórios de ponto de montagem. Para obter a mesma visualização, você também precisa compartilhar os sistemas de arquivos inferiores e montá-los nos clientes.

EDIT: A saída mount que você adicionou confirma minha hipótese: há três volumes aqui, / share faz parte de sda1, / share / build é sdb1 e / share / team é sdc1. A data foi aparentemente de outubro de 2013 quando você criou os pontos de montagem em sda1 para sdb1 e sdc1, mas agora que você montou sobre eles você não pode mais ver esses diretórios do sistema local. No cliente NFS, no entanto, os volumes extras não são montados e você pode ver os pontos de montagem originais. Você mesmo pode explorar isso criando arquivos e diretórios em /home/mzhu/test/build - eles não serão exibidos em / share / build, mas usarão espaço de sda1.

    
por 24.05.2013 / 14:14