Date: Thu, 31 Jan 2013 11:27:36 +0000 From: "Eggert, Lars" <lars@netapp.com> To: Craig Rodrigues <rodrigc@crodrigues.org> Cc: "freebsd-current@freebsd.org" <freebsd-current@freebsd.org> Subject: Re: mounting root from NFS via ROOTDEVNAME Message-ID: <D4D47BCFFE5A004F95D707546AC0D7E91F6B8297@SACEXCMBX01-PRD.hq.netapp.com> In-Reply-To: <CAG=rPVceQaKeprUyTXZyK13FSk2NY2sFT8LvG=wbQWsk08wwBQ@mail.gmail.com> References: <D4D47BCFFE5A004F95D707546AC0D7E91F671642@SACEXCMBX01-PRD.hq.netapp.com> <CAG=rPVergKVKUO=VySvM65WPJO_Od1tkWvx45tM_sEyO65mwUg@mail.gmail.com> <19F92E0C-F004-4F16-A5FC-A10DF84BDCCF@netapp.com> <D4D47BCFFE5A004F95D707546AC0D7E91F674CDE@SACEXCMBX01-PRD.hq.netapp.com> <CAG=rPVezTjcTp_AXsOMWYCSM1_xFJDvmUwdguHdZBABanGGrxw@mail.gmail.com> <D4D47BCFFE5A004F95D707546AC0D7E91F69BF73@SACEXCMBX01-PRD.hq.netapp.com> <CAG=rPVceQaKeprUyTXZyK13FSk2NY2sFT8LvG=wbQWsk08wwBQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi,
On Jan 30, 2013, at 22:43, Craig Rodrigues <rodrigc@crodrigues.org> wrote:
> What you need to do is, before the FreeBSD kernel boots, your
> loader needs to export some environment variables. This will trigger
> the various behaviors in the FreeBSD mount code.
the loader can export some environment variables (this is how I get the ser=
ial console working.)
> So as I suggested before, you should continue with:
>=20
> (1) Have /usr/home/elars/dst/etc/fstab with:
> # Options Dump Pass
> 10.11.12.13:/usr/home/elars/dst/ / nfs ro 0 =
0
Done.
> (2) From your loader, you need to export this environment variable, so
> that the kernel can get it with getenv(). You need at least:
>=20
> vfs.root.mountfrom=3Dnfs:10.11.12.13:/usr/home/elars/dst
Done.
> Now, there are some other environment variables you need to export from t=
he
> loader. =20
>=20
> boot.netif.ip
> boot.netif.netmask
> boot.netif.gateway
> boot.nfsroot.server
> boot.nfsroot.path
Done. I also ripped out all the BOOTP* options from the kernel.
However, this still fails:
Trying to mount root from nfs:10.11.12.13:/usr/home/elars/dst []...
mountroot: waiting for device 10.11.12.13:/usr/home/elars/dst ...
Mounting from nfs:10.11.12.13:/usr/home/elars/dst failed with error 19.
Loader variables:
vfs.root.mountfrom=3Dnfs:10.11.12.13:/usr/home/elars/dst
Manual root filesystem specification:
<fstype>:<device> [options]
Mount <device> using filesystem <fstype>
and with the specified (optional) option list.
eg. ufs:/dev/da0s1a
zfs:tank
cd9660:/dev/acd0 ro
(which is equivalent to: mount -t cd9660 -o ro /dev/acd0 /)
? List valid disk boot devices
. Yield 1 second (for background tasks)
<empty line> Abort manual input
mountroot>=20
I did a tcpdump and no traffic shows up on the correct interface (em4). I g=
uess I need to set yet another loader environment variable to indicate whic=
h interface I'd like to use. Looking at the source, I only see boot.netif.n=
ame, but setting that to em4 doesn't help either.
Any further ideas?
Thanks,
Lars=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?D4D47BCFFE5A004F95D707546AC0D7E91F6B8297>
