[Bug 1818121] Re: NFSv4 shares with option `-vers=4.0` are not mounted: mount(nfs): no hosts available
Christian Ehrhardt
1818121 at bugs.launchpad.net
Tue Mar 12 07:06:21 UTC 2019
Ok, that worked well in Disco.
The PPA [1] now contains the builds for a fix for Bionic/Cosmic as well.
Two MPs for that are up (linked to the bug here already)
[1]: https://launchpad.net/~paelzer/+archive/ubuntu/bug-1818121-autofs-
nfs4.x
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to autofs in Ubuntu.
https://bugs.launchpad.net/bugs/1818121
Title:
NFSv4 shares with option `-vers=4.0` are not mounted: mount(nfs): no
hosts available
Status in autofs package in Ubuntu:
Fix Released
Status in autofs source package in Bionic:
Confirmed
Status in autofs source package in Cosmic:
Confirmed
Bug description:
[Impact]
* Specifying NFS v4 works, but using subversion fails.
To make it worse v4.2 is considered not v4 at all which is not what
users expect or need. If then your server does not support v4 the
mount fails.
* This is fixed upstream for a while, backport the patch from there to at
lest the latest LTS (older ones are unlikely to suddenly need version
4.x).
[Test Case]
* This is a bit tricky you need a NFS server that is "less tolerant" liek
the one reported in comment #5. If you have such a server set up
configure your exports following [1] (or similar)
I usually place a file called "testfile" in that export to check if it
exists, feel free to do similarly.
* Then on the client side install autofs and follow [2]
The summary of those steps is:
- you need the autofs4 kernel module which is in linux-modules-extra
so install that if you don't have it.
- configure your autofs.master to use a nfs mount for example
$ echo "/nfs/ /etc/auto.nfs" | sudo tee -a /etc/auto.master
$ sudo mkdir -p /nfs/testmount
$ echo "testmount -fstype=nfs,rw,retry=0
<SERVERIP>:/export/users/testmount" | sudo tee -a /etc/auto.nfs
$ ll /nfs/testmount/testfile
-rw-r--r-- 1 root root 0 Mar 1 10:43 /nfs/testmount/testfile
Without the fix it will fail to mount and "/nfs/testmount" will be an
empty unmoutned directory.
With the fix you will see the mount working
(from mount output)
192.168.122.55:/export/users/testmount on /nfs/testmount type nfs4
(rw,relatime,vers=4.2,rsize=65536,wsize=65536,namlen=255,hard,
proto=tcp,timeo=600,retrans=2,sec=sys,
clientaddr=192.168.122.226,local_lock=none,addr=192.168.122.55)
[1]: https://help.ubuntu.com/community/SettingUpNFSHowTo
[2]: https://wiki.ubuntuusers.de/Autofs/
[Regression Potential]
* The change is minimal and just changes from a full string match to a
prefix match. In theory that could make configurations which today
specify 4.2 (and silently fail doing so as this is broken) then
"suddenly" really use v4 which it currently does not always do.
v4.2 currently is mounted as v4 and after the change will be mounted as
v4.2 as specified - but that is the fix and not so much a regression.
[Other Info]
* n/a
---
With Ubuntu 18.10 and autofs 5.1.2-4ubuntu1, mounting NFSv4 shares
does not work. Directly mounting them with `mount.nfs` works.
```
Feb 28 18:08:30 nfsclient automount[22978]: expire_proc: exp_proc = 131147807650128 path /home_mariux
Feb 28 18:08:30 nfsclient automount[22978]: expire_cleanup: got thid 131147807650128 path /home_mariux stat 0
Feb 28 18:08:30 nfsclient automount[22978]: expire_cleanup: sigchld: exp 131147807650128 finished, switching from 2 to 1
Feb 28 18:08:30 nfsclient automount[22978]: st_ready: st_ready(): state = 2 path /home_mariux
Feb 28 18:08:32 nfsclient automount[22978]: handle_packet: type = 3
Feb 28 18:08:32 nfsclient automount[22978]: handle_packet_missing_indirect: token 46, name joey, request pid 28647
Feb 28 18:08:32 nfsclient automount[22978]: attempting to mount entry /home_mariux/joey
Feb 28 18:08:32 nfsclient automount[22978]: lookup_mount: lookup(file): looking up joey
Feb 28 18:08:32 nfsclient automount[22978]: lookup_mount: lookup(file): joey -> claptrap:/amd/claptrap/2/home/edv/joey
Feb 28 18:08:32 nfsclient automount[22978]: parse_mount: parse(sun): expanded entry: claptrap:/amd/claptrap/2/home/edv/joey
Feb 28 18:08:32 nfsclient automount[22978]: parse_mount: parse(sun): gathered options: nosuid
Feb 28 18:08:32 nfsclient automount[22978]: parse_mount: parse(sun): dequote("claptrap:/amd/claptrap/2/home/edv/joey") -> claptrap:/amd/claptrap/2/home/edv/bucz
Feb 28 18:08:32 nfsclient automount[22978]: parse_mount: parse(sun): core of entry: options=nosuid, loc=claptrap:/amd/claptrap/2/home/edv/joey
Feb 28 18:08:32 nfsclient automount[22978]: sun_mount: parse(sun): mounting root /home_mariux, mountpoint joey, what claptrap:/amd/claptrap/2/home/edv/joey, f
Feb 28 18:08:32 nfsclient automount[22978]: mount_mount: mount(nfs): root=/home_mariux name=joey what=claptrap:/amd/claptrap/2/home/edv/joey, fstype=nfs, opti
Feb 28 18:08:32 nfsclient automount[22978]: mount_mount: mount(nfs): nfs options="nosuid", nobind=0, nosymlink=0, ro=0
Feb 28 18:08:32 nfsclient automount[22978]: get_nfs_info: called with host claptrap(141.14.16.132) proto 6 version 0x30
Feb 28 18:08:32 nfsclient automount[22978]: get_nfs_info: called with host claptrap(141.14.16.132) proto 17 version 0x30
Feb 28 18:08:32 nfsclient automount[22978]: mount(nfs): no hosts available
Feb 28 18:08:32 nfsclient automount[22978]: dev_ioctl_send_fail: token = 46
Feb 28 18:08:32 nfsclient automount[22978]: failed to mount /home_mariux/joey
Feb 28 18:08:32 nfsclient automount[22978]: st_readmap: state 1 path /home_mariux
Feb 28 18:08:32 nfsclient automount[22978]: handle_packet: type = 3
Feb 28 18:08:32 nfsclient automount[22978]: handle_packet_missing_indirect: token 47, name joey, request pid 28647
Feb 28 18:08:32 nfsclient automount[22978]: dev_ioctl_send_fail: token = 47
Feb 28 18:08:32 nfsclient automount[22978]: re-reading map for /home_mariux
Feb 28 18:08:32 nfsclient automount[22978]: lookup_nss_read_map: reading map file /etc/automount/auto.home
Feb 28 18:08:32 nfsclient automount[22978]: do_init: parse(sun): init gathered global options: nosuid
Feb 28 18:08:32 nfsclient automount[22978]: st_ready: st_ready(): state = 4 path /home_mariux
```
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/autofs/+bug/1818121/+subscriptions
More information about the foundations-bugs
mailing list