Re: Mounting NFS root FS

From: Trond Myklebust
Date: Tue Dec 05 2006 - 14:38:23 EST


On Tue, 2006-12-05 at 19:43 +0100, Jan Engelhardt wrote:
> >> Way 1:
> >>
> >> mount -nt tmpfs none /var/lib/nfs;
> >> mount -nt nfs fserve:/tftpboot/linux /mnt;
> >> mount -n --move /var/lib/nfs /mnt/var/lib/nfs/;
> >
> >Nope. As Janne implied, the /var/lib/nfs partition _must_ be persistent,
> >since it is used to store information about the servers on which the
> >client holds locks and therefore needs to notify in case it reboots.
> >Using tmpfs defeats the whole purpose of having an rpc.statd in the
> >first place.
>
> Well, tmpfs is persistens as long as the machine is powered on (and
> you did not manage to fubar the tmpfs etc.), no?

'persistent' as in 'persistent across client reboots'. See above
paragraph for what the purpose of rpc.statd is.

> Or, you can also get it out of tmpfs again and restart statd once
> you've pivoted.

Then you would lose all the locks that you set before you restarted
statd.

> >> ./run_init -c /mnt /sbin/init; # or similar
> >>
> >> And you can also start locking after pivot_rooting to /mnt, that would
> >> not even require (/mnt)/var/lib/nfs to be a separate mount.
> >
> >Much better idea. You can delay starting rpc.statd until you have set up
> >your filesystem provided that you are not running any programs that
> >require NLM locking. If you do need to run such a program before you
> >start rpc.statd, then you will have to use the '-onolock' mount option.
>
> Since we're on the topic locking, is it because I am not running
> statd on the client that my NFS client hangs during boot phase?

If you have applications that try to set locks before rpc.statd is up
and running, then that would explain it.

Trond

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/