Hide Forgot
Description of problem: I am booting a diskless RHEL-6 environment using dracut this way: [victim@data ~]$ cat /proc/cmdline initrd=rhel6-ws-boot/initramfs.img console=ttyS0,115200 console=tty0 root=nfs4:192.168.60.50:/vol/vol1/OS/rhel6/root crashkernel=256M@16M nomodeset vesa BOOT_IMAGE=rhel6-ws-boot/vmlinuz The system boots up correctly with / mounted via nfs4 but rpc_pipefs is not mounted correctly to /var/lib/nfs/rpc_pipefs. Strangely enough, it "looks and feels" that it is mounted: [root@data ~]# mount | grep rpc sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime) ... but is not really: [root@data ~]# umount /var/lib/nfs/rpc_pipefs umount: /var/lib/nfs/rpc_pipefs not mounted and no NFS4 ID mapping is working as well. After re-mounting manually this way: [root@data ~]# mount -t rpc_pipefs sunrpc /var/lib/nfs/rpc_pipefs and restarting rpc.idmapd, the ID mapping starts working again. Version-Release number of selected component (if applicable): [ondrejv@data ~]$ rpm -qi dracut Name : dracut Relocations: (not relocatable) Version : 004 Vendor: Red Hat, Inc. Release : 33.2.el6_0 Build Date: How reproducible: always
I originaly believed it is a dracut problem (see bug 701309), but it is obliously not. The script /etc/rc.d/rc.sysinit goes through the /etc/rwtab and mount /var to tmpfs thus making the rpc_pipefs filesystem no longer accessible. So I believe we should handle this in rc.sysinit script - after mounting all the stateless/persistent state files and directories, we should also make sure that /var/lib/nfs/rpc_pipefs is mounted correctly.
Since RHEL 6.3 External Beta has begun, and this bug remains unresolved, it has been rejected as it is not proposed as exception or blocker. Red Hat invites you to ask your support representative to propose this request, if appropriate and relevant, in the next release of Red Hat Enterprise Linux.
Well, IIRC we don't support root on NFS in RHEL officially. But yes, you have a point here. We could setup the new /var temporarily on $tmpdir and mount move over all mounts in /var to $tmpdir and then mount move $tmpdir to /var.
Fix commited upstream -> 718550312d46b9ef7b9aaa2d7ba020273a17adf7
cc
https://git.fedorahosted.org/cgit/initscripts.git/commit/?h=rhel6-branch&id=05f521938fc56308077f0f58a38ebe3a0c7ffaad
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2014-1448.html