Re: nfs server serving ... wrong mount?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Oct 21, 2021 at 12:51 AM Carl Karsten <carl@xxxxxxxxxxxxxxxx> wrote:
>
> I have 2 overlayfs monts.
>
> I can nfs export one or the other fine, but not both at the same time,
> the client gets the wrong files.

Hi Carl,

Thanks for the daily overlayfs riddles ;-)

This is not an overlayfs issue. It's nfs exports configuration issue.
Please read the documentation of fsid export option.
Disk filesystems have uuid so they don't need explicit identification.
Overlayfs does not have a stable UUID.

>
> server hosthame negk bullseye ext4
> client twist ubuntu
>
> juser@negk:~$ cat /etc/exports
> # /srv/nfs/rpi/buster/boot/merged *(ro,sync,no_subtree_check,no_root_squash)
> /srv/nfs/rpi/buster/root/merged *(ro,sync,no_subtree_check,no_root_squash)

In this case, "root" is auto assigned fsid 1

>
> juser@negk:~$ ls /srv/nfs/rpi/buster/boot/merged
> bcm2708-rpi-b.dtb       bcm2710-rpi-3-b-plus.dtb  fixup4cd.dat
> kernel7.img       start4.elf
> (snip)
>
> juser@negk:~$ ls /srv/nfs/rpi/buster/root/merged
> bin  boot  dev  etc  home  lib  lost+found  media  mnt  opt  proc
> root  run  sbin  srv  sys  tmp  usr  var
>
> carl@twist:~/mnt$ sudo mount -t nfs negk:/srv/nfs/rpi/buster/root/merged nfs
> carl@twist:~/mnt$ ls nfs
> bin  boot  dev  etc  home  lib  lost+found  media  mnt  opt  proc
> root  run  sbin  srv  sys  tmp  usr  var
> carl@twist:~/mnt$ sudo umount nfs
>
> # enable root in negk exports...

I think you meant enable "boot"
and is that case "boot" gets assigned fsid 1 and "root" gets reassigned fsid 2

>
> carl@twist:~/mnt$ sudo mount -t nfs negk:/srv/nfs/rpi/buster/root/merged nfs
> carl@twist:~/mnt$ ls nfs
> bcm2708-rpi-b.dtb       bcm2710-rpi-3-b-plus.dtb  fixup4cd.dat
> kernel7.img       start4.elf
> (snip)
>

It is a bit surprising to me that you get the wrong export after a clean mount,
but it doesn't change the core configuration issue.

Perhaps nfs client has some fsid cache or you have a deferred umount in
the system of negk:/srv/nfs/rpi/buster/root/merged (e.g. due to spawned mount
ns or something) and then the "new" nfs mount uses the old resolved fsid 1.

In any case, when exporting more than one non-disk filesystem, you should
use explicit fsid.

Thanks,
Amir.



[Index of Archives]     [Linux Filesystems Devel]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux