[Bug 525154] Re: mountall for /var or other nfs mount races with rpc.statd
dennis berger
525154 at bugs.launchpad.net
Thu Oct 13 09:14:05 UTC 2011
It seems we ran into the same problem today.
System is 11.04 natty from yesterday.
boot.log from today.
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/local-premount ... done.
Begin: Running /scripts/local-bottom ... done.
done.
Begin: Running /scripts/init-bottom ... done.
fsck from util-linux-ng 2.17.2
fsck from util-linux-ng 2.17.2
fsck from util-linux-ng 2.17.2
/dev/mapper/raid1-root: sauber, 356460/3662848 Dateien, 12171413/14648320 Blöcke
/dev/sda1: sauber, 236/488640 Dateien, 118485/975872 Blöcke
/dev/mapper/raid1-profiles: sauber, 12/6553600 Dateien, 426582/26214400 Blöcke
init: portmap-wait (statd) main process (409) killed by TERM signal^M
init: statd-mounting main process (402) killed by TERM signal^M
mount.nfs: Failed to resolve server apps: Name or service not known
init: statd main process (432) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (446) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (454) terminated with status 1^M
init: statd main process ended, respawning^M
init: ureadahead-other main process (461) terminated with status 4^M
init: statd main process (463) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (471) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (479) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (487) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (495) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (503) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (511) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (533) terminated with status 1^M
init: statd respawning too fast, stopped^M
init: ureadahead-other main process (701) terminated with status 4^M
mountall: mount /group [433] brach mit dem Status 32 ab
init: statd-mounting main process (723) killed by TERM signal^M
mount.nfs: Failed to resolve server apps: Name or service not known
mountall: mount /group [760] brach mit dem Status 32 ab
init: statd main process (759) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (769) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (777) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (785) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (793) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (802) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (821) terminated with status 1^M
init: statd main process ended, respawning^M
mount.nfs: Failed to resolve server apps: Name or service not known
mountall: mount /group [822] brach mit dem Status 32 ab
init: statd main process (831) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (839) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (847) terminated with status 1^M
init: statd main process ended, respawning^M
init: statd main process (855) terminated with status 1^M
init: statd respawning too fast, stopped^M
init: statd-mounting main process (815) killed by TERM signal^M
init: statd-mounting main process (965) killed by TERM signal^M
mount.nfs: Failed to resolve server apps: Name or service not known
mountall: mount /group [978] brach mit dem Status 32 ab
^X^Z^M<U+F020>ESC[6nESCDESC[1FESC[1X * Stopping cold plug devicesESC[122G[ OK ] <----- AT this point I hit Enter on console
* Stopping log initial device creationESC[122G[ OK ]
* Starting enable remaining boot-time encrypted block devicesESC[122G[ OK ]
* Starting configure network device securityESC[122G[ OK ]
* Starting configure virtual network devicesESC[122G[ OK ]
* Starting save udev log and update rulesESC[122G[ OK ]
* Stopping save udev log and update rulesESC[122G[ OK ]
* Stopping configure virtual network devicesESC[122G[ OK ]
* Stopping enable remaining boot-time encrypted block devicesESC[122G[ OK ]
* Starting CUPS printing spooler/serverESC[122G[ OK ]
* Stopping OpenSSH serverESC[122G[ OK ]
* Starting OpenSSH serverESC[122G[ OK ]
* Starting Mount network filesystemsESC[122G[ OK ]
* Starting configure network deviceESC[122G[ OK ]
* Stopping Mount network filesystemsESC[122G[ OK ]
* Starting Block the mounting event for NFS filesytems until statd is runningESC[122G[ OK ]
* Stopping Block the mounting event for NFS filesytems until statd is runningESC[122G[ OK ]
* Starting NetBIOS name serverESC[122G[ OK ]
* Starting Mount network filesystemsESC[122G[ OK ]
* Stopping Mount network filesystemsESC[122G[ OK ]
* Starting configure bridges for deviceESC[122G[ OK ]
* Starting Block the mounting event for NFS filesytems until statd is runningESC[122G[ OK ]
* Stopping Block the mounting event for NFS filesytems until statd is runningESC[122G[ OK ]
mount.nfs: No route to host
mountall: mount /group [1506] brach mit dem Status 32 ab
* Starting anac(h)ronistic cronESC[122G[ OK ]
# cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid -o value -s UUID' to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc nodev,noexec,nosuid 0 0
/dev/mapper/raid1-root / ext4 errors=remount-ro,acl 0 1
# /boot was on /dev/sda1 during installation
UUID=2503bd84-8230-487c-bbab-a795185af583 /boot ext2 defaults 0 2
/dev/mapper/raid1-swap none swap sw 0 0
/dev/mapper/raid1-profiles /var/lib/samba/profiles ext4 errors=remount-ro,acl 0 2
apps:/group /group nfs bg,rw,soft,vers=3,proto=tcp 2 2
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to mountall in Ubuntu.
https://bugs.launchpad.net/bugs/525154
Title:
mountall for /var or other nfs mount races with rpc.statd
Status in “mountall” package in Ubuntu:
Invalid
Status in “nfs-utils” package in Ubuntu:
Fix Released
Status in “portmap” package in Ubuntu:
Fix Released
Status in “mountall” source package in Lucid:
Invalid
Status in “nfs-utils” source package in Lucid:
Fix Released
Status in “portmap” source package in Lucid:
Fix Released
Status in “mountall” source package in Maverick:
Invalid
Status in “nfs-utils” source package in Maverick:
Fix Released
Status in “portmap” source package in Maverick:
Fix Released
Status in “mountall” source package in Natty:
Invalid
Status in “nfs-utils” source package in Natty:
Fix Released
Status in “portmap” source package in Natty:
Fix Released
Bug description:
If one has /var (or /var/lib or /var/lib/nfs for that matter) on its
own filesystem the statd.conf start races with the mounting of /var as
rpc.statd needs /var/lib/nfs to be available in order to work.
I am sure this is not the only occurrence of this type of problem.
A knee-jerk solution is to simply spin in statd.conf waiting for
/var/lib/nfs to be available, but polling sucks, especially for
something like upstart whose whole purpose is to be an event driven
action manager.
SRU justification: NFS mounts do not start reliably on boot in lucid
and maverick (depending on the filesystem layout of the client system)
due to race conditions in the startup of statd. This should be fixed
so users of the latest LTS can make reliable use of NFS.
Regression potential: Some systems may fail to mount NFS filesystems
at boot time that didn't fail before. Some systems may hang at boot.
Some systems may hang while upgrading the packages (this version or in
a future SRU). I believe the natty update adequately guards against
all of these possibilities, but the risk is there.
TEST CASE:
1. Configure a system with /var as a separate partition.
2. Add one or more mounts of type 'nfs' to /etc/fstab.
3. Boot the system.
4. Verify whether statd has started (status statd) and whether all NFS filesystems have been mounted.
5. Repeat 3-4 until the race condition is triggered.
6. Upgrade to the new version of portmap and nfs-common from -proposed.
7. Repeat steps 3-4 until satisfied that statd now starts reliably and all non-gss-authenticated NFSv3 filesystems mount correctly at boot time.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/mountall/+bug/525154/+subscriptions
More information about the foundations-bugs
mailing list