diferentes volumes montados em loopback exportados através do NFS são vistos como 1 pelo cliente

diferentes volumes montados em loopback exportados através do NFS são vistos como 1 pelo cliente

Eu tenho um problema bastante peculiar. Estou executando 3.2.0-58-generic #88-Ubuntu(Ubuntu 12.04) e montei os seguintes dispositivos de loopback:

cat /proc/mounts | grep loop
    /dev/loop0 /work/kernel/AEL/fpga-filesystem ext4 rw,relatime,user_xattr,barrier=1,data=ordered 0 0
    /dev/loop1 /work/kernel/AEL/model-filesystem ext4 rw,relatime,user_xattr,barrier=1,data=ordered 0 0

sudo losetup -a
/dev/loop0: [fc02]:4990567 (/work/kernel/AEL/openembed-fpga.img), offset 54525952
/dev/loop1: [fc02]:4990564 (/work/kernel/AEL/vexpress64-openembedded_minimal-armv8-gcc-4.8_20140222-611.img), offset 54525952

Os 2 arquivos .img são arquivos completamente separados e não links simbólicos:

ls -li /work/kernel/AEL/
      2 drwxr-xr-x 21 root     root           4096 Mar 26 20:14 fpga-filesystem
      2 drwxr-xr-x 21 root     root           4096 Mar 26 20:05 model-filesystem
4990567 -rw-r-----  1 nikbor01 nikbor01 3221225472 Mar 27 09:47 openembed-fpga.img
4990564 -rw-r-----  1 nikbor01 nikbor01 3221225472 Mar 26 20:06 vexpress64-openembedded_minimal-armv8-gcc-4.8_20140222-611.img

A razão pela qual os 2 diretórios têm o mesmo número INODE é que as imagens são iguais (como têm o mesmo conteúdo), mas estão claramente montadas em um dispositivo de loop diferente.

E por fim exporto os 2 diretórios onde as imagens são montadas via nfs:

/work/kernel/AEL/fpga-filesystem *(rw,sync,no_subtree_check,no_root_squash,insecure)
/work/kernel/AEL/model-filesystem *(rw,sync,crossmnt,no_subtree_check,no_root_squash,insecure)

E agora o auge de tudo - quando eu monto o sistema de arquivos fpga no cliente1 e o sistema de arquivos modelo no cliente2, ambos veem o mesmo sistema de arquivos (por exemplo, aquele no sistema de arquivos fpga).

Aqui está a montagem no client1:

10.1.209.36:/work/kernel/AEL/fpga-filesystem / nfs rw,relatime,vers=3,rsize=4096,wsize=4096,namlen=255,hard,nolock,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=10.1.209.36,mountvers=3,mountproto=tcp,local_lock=all,addr=10.1.209.36 0 0

E no cliente2:

10.1.209.36:/work/kernel/AEL/model-filesystem / nfs rw,relatime,vers=3,rsize=4096,wsize=4096,namlen=255,hard,nolock,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=10.1.209.36,mountvers=3,mountproto=tcp,local_lock=all,addr=10.1.209.36 0 0

No entanto, quando faço isso ls /em ambos os clientes, vejo apenas o conteúdo do diretório fpga-filesystem, o que não faz absolutamente nenhum sentido. Alguma idéia de como posso depurar o problema.

informação relacionada