I am using initrd in order to configure ethernet and
mount NFS root. It works with 2.4.25 kernel, like this:
linld image=2425 initrd=image.gz vga=4 "cl=root=/dev/ram init=/linuxrc.nfs.vda devfs=mount"
that is, it unpacks image.gz into ramdisk #0, mounts it,
mounts devfs on /dev and execs /linuxrc.nfs.vda.
When I tried to boot 2.6.3 with
linld image=263 initrd=image.gz vga=4 "cl=root=/dev/ram init=/linuxrc.nfs.vda devfs=mount"
it unpacks image.gz into ramdisk #0, mounts it,
mounts devfs on /dev and ... complains about NFS server.
Wow. I did not say /dev/nfs, what NFS?
...
VFS: Mounted root (ext2 filesystem)
Mounted devfs on /dev
(here 2.4.25 would say "Freed unused kernel mem..." and exec init)
Root-NFS: No NFS server available, giving up
VFS: Unable to mount root fs via NFS, trying floppy
VFS: Insert root floppy and press ENTER
Omitting devfs=mount does not help.
root=/dev/ram0, root=/dev/rd/0 does not help.
Config attached.
--
vda
On Fri, Mar 05, 2004 at 12:38:53PM +0200, vda wrote:
> I am using initrd in order to configure ethernet and
> mount NFS root. It works with 2.4.25 kernel, like this:
> linld image=2425 initrd=image.gz vga=4 "cl=root=/dev/ram init=/linuxrc.nfs.vda devfs=mount"
> that is, it unpacks image.gz into ramdisk #0, mounts it,
> mounts devfs on /dev and execs /linuxrc.nfs.vda.
> When I tried to boot 2.6.3 with
> linld image=263 initrd=image.gz vga=4 "cl=root=/dev/ram init=/linuxrc.nfs.vda devfs=mount"
> it unpacks image.gz into ramdisk #0, mounts it,
> mounts devfs on /dev and ... complains about NFS server.
> Wow. I did not say /dev/nfs, what NFS?
> ...
> VFS: Mounted root (ext2 filesystem)
> Mounted devfs on /dev
> (here 2.4.25 would say "Freed unused kernel mem..." and exec init)
> Root-NFS: No NFS server available, giving up
> VFS: Unable to mount root fs via NFS, trying floppy
> VFS: Insert root floppy and press ENTER
> Omitting devfs=mount does not help.
> root=/dev/ram0, root=/dev/rd/0 does not help.
> Config attached.
nfsroot works in 2.6.3 and above here. I'm not sure you need it per se
for initrd's; I think the way it's intended to work with that is for
the scripts to configure network interfaces, mount the nfsroot, and then
pivot_root(). Can you try without initrd?
Also, try passing ip= for these things.
-- wli
On Fri, 05 Mar 2004 12:00:24 +0100, you wrote in linux.kernel:
> linld image=3D263 initrd=3Dimage.gz vga=3D4 "cl=3Droot=3D/dev/ram init=3D=
> /linuxrc.nfs.vda devfs=3Dmount"
Try root=/dev/ram0
--
Ciao,
Pascal
On Friday 05 March 2004 14:57, Pascal Schmidt wrote:
> On Fri, 05 Mar 2004 12:00:24 +0100, you wrote in linux.kernel:
> > linld image=3D263 initrd=3Dimage.gz vga=3D4 "cl=3Droot=3D/dev/ram
> > init=3D= /linuxrc.nfs.vda devfs=3Dmount"
>
> Try root=/dev/ram0
I tried. Not working.
--
vda
On Friday 05 March 2004 13:04, William Lee Irwin III wrote:
> On Fri, Mar 05, 2004 at 12:38:53PM +0200, vda wrote:
> > I am using initrd in order to configure ethernet and
> > mount NFS root. It works with 2.4.25 kernel, like this:
> > linld image=2425 initrd=image.gz vga=4 "cl=root=/dev/ram
> > init=/linuxrc.nfs.vda devfs=mount" that is, it unpacks image.gz into
> > ramdisk #0, mounts it,
> > mounts devfs on /dev and execs /linuxrc.nfs.vda.
> > When I tried to boot 2.6.3 with
> > linld image=263 initrd=image.gz vga=4 "cl=root=/dev/ram
> > init=/linuxrc.nfs.vda devfs=mount" it unpacks image.gz into ramdisk #0,
> > mounts it,
> > mounts devfs on /dev and ... complains about NFS server.
> > Wow. I did not say /dev/nfs, what NFS?
> > ...
> > VFS: Mounted root (ext2 filesystem)
> > Mounted devfs on /dev
> > (here 2.4.25 would say "Freed unused kernel mem..." and exec init)
> > Root-NFS: No NFS server available, giving up
> > VFS: Unable to mount root fs via NFS, trying floppy
> > VFS: Insert root floppy and press ENTER
> > Omitting devfs=mount does not help.
> > root=/dev/ram0, root=/dev/rd/0 does not help.
> > Config attached.
>
> nfsroot works in 2.6.3 and above here. I'm not sure you need it per se
> for initrd's; I think the way it's intended to work with that is for
> the scripts to configure network interfaces, mount the nfsroot, and then
> pivot_root(). Can you try without initrd?
>
> Also, try passing ip= for these things.
I run these things everyday.
nfsroot and ip=.... works, no question about that.
Just imagine all-modular kernel which needs to load ethernet driver first,
*then* mount nfs root and pivot_root. Or nfsroot-over-wireless :)
--
vda
On Friday 05 March 2004 13:04, William Lee Irwin III wrote:
>> nfsroot works in 2.6.3 and above here. I'm not sure you need it per se
>> for initrd's; I think the way it's intended to work with that is for
>> the scripts to configure network interfaces, mount the nfsroot, and then
>> pivot_root(). Can you try without initrd?
>> Also, try passing ip= for these things.
On Fri, Mar 05, 2004 at 06:31:31PM +0200, Denis Vlasenko wrote:
> I run these things everyday.
> nfsroot and ip=.... works, no question about that.
> Just imagine all-modular kernel which needs to load ethernet driver first,
> *then* mount nfs root and pivot_root. Or nfsroot-over-wireless :)
> --
> vda
For this, you should probably script the initrd to do the IP
configuration and mount the nfsroot before pivot_root().
-- wli
On Friday 05 March 2004 19:06, William Lee Irwin III wrote:
> On Friday 05 March 2004 13:04, William Lee Irwin III wrote:
> >> nfsroot works in 2.6.3 and above here. I'm not sure you need it per se
> >> for initrd's; I think the way it's intended to work with that is for
> >> the scripts to configure network interfaces, mount the nfsroot, and then
> >> pivot_root(). Can you try without initrd?
> >> Also, try passing ip= for these things.
>
> On Fri, Mar 05, 2004 at 06:31:31PM +0200, Denis Vlasenko wrote:
> > I run these things everyday.
> > nfsroot and ip=.... works, no question about that.
> > Just imagine all-modular kernel which needs to load ethernet driver
> > first, *then* mount nfs root and pivot_root. Or nfsroot-over-wireless :)
> > --
> > vda
>
> For this, you should probably script the initrd to do the IP
> configuration and mount the nfsroot before pivot_root().
Exactly. For now I don't really need it, but decided to
try it just in case I'll need it later. I stuffed
udhcp and nfs tools into initrd, played with it a bit,
and finally managed to make it work under 2.4.25.
Then I tried 2.6.3 with the _same_ initrd and same
bootloader.
2.6.3 refuses to recognize my initrd as root fs.
It even mounts it on / but then suddenly acts
as if I specified root=/dev/nfs. I _didn't_.
I said root=/dev/ram, then tried root=/dev/ram0,
root=/dev/ram/0, root=/dev/rd/0.
All to no avail:
VFS: Mounted root (ext2 filesystem) <-- mounts initrd on /
Mounted devfs on /dev
(here 2.4.25 would say "Freed unused kernel mem..." and happily exec init)
Root-NFS: No NFS server available, giving up
VFS: Unable to mount root fs via NFS, t
--
vda