[Soekris] net4801 - Linux boot?

Dave Johnson dave-soekris-mailinglist at centerclick.org
Sat Dec 6 23:41:50 UTC 2003

Göran Sandin writes:
> > I found pxelinux get very confused with complicated config files.
> > This one works just fine for me (both nfs root and local root)
> >
> > http://centerclick.org/net4801/pxelinux/default
> I "translated" that into this:
> SERIAL 0 19200 0
> label cf
> kernel vmlinuz-2.4.22-pebble
> append initrd=initrd-2.4.22-pebble console=ttyS00,19200n81 root=/dev/hda1 rw 
> ip=dhcp
> (whithout all empty lines and comments. Note that I changed to ttyS00 instead 
> of ttyS0. With this change, I got some more output after "Warning: unable to 
> open an initial console.)...
> > You can also see the kernel config I'm using at (2.4.23)
> >
> > http://centerclick.org/net4801/kernel_config
> That config had a lot of differences compared to the one I downloaded from 
> somewhere for 2.4.22. I have downloaded the komplete 2.4.23 kernel also, but 
> not tried it yet. Is your kernel_config "standard" from kernel.org, or have 
> you applied any patches on it?

standard kernel.org 2.4.23 with:


the last two aren't really required.

> > /dev/sda* is wrong (unless you've hacked your 4801 to contain a SCSI
> > card) use /dev/hda*
> Well, /dev/sda* is what I got when I had the compact flash in the USB-card 
> reader on my normal PC. As I understood it, I had to write it in this way to 
> get LILO to actually place the boot-information on the compact flash and not 
> on /dev/hda in my computer.

If you're using a USB-CF adaptor then yes that's typical as USB mass
storage under linux makes storage devies show up using SCSI emulation.

All the soekris boards place the CF directly on the IDE controller.

> I tried your suggestion but it made no difference. (I guess I have to update 
> GRUB on my computer before I turn it off for tonight ;-).

Oh, you're trying to install the bootrecord from a PC not from the
soekris box itself.  That's probably possible (though tricky as the
devices aren't the same), but it's much easier to just boot the kernel
via tftp then run lilo from the soekris box directly.

> > To get lilo going, It's easiest to pxe boot the kernel with a local
> > root fs (not nfsroot), then run lilo as the cf will already be mounted
> > on /
> OK, but I have still not been able to get a login-prompt.

did you start a getty on ttyS0 from your /etc/inittab?

> When I try to boot from the CF, I still get the 'L' instead of 'LILO' and all 
> 99's.

once you get it netbooted, run lilo on the box itself and it should be
all better.

> If I press Ctrl-P and do a "boot f0" I actually get it booting now. So this is 
> further than before. However, I do not get a login-prompt. It is the same 
> both for the console and Eth0.
> However, now it do respond on ping to Eth0.
> ---
> # ping -f
> PING ( 56(84) bytes of data.
> --- ping statistics ---
> 6178290 packets transmitted, 6178290 received, 0% packet loss, time 2501355ms
> rtt min/avg/max/mdev = 0.345/0.381/10.623/0.215 ms, pipe 2, ipg/ewma 
> 0.404/0.374 ms
> ---
> I have a feeling that I can not get the 4801 to mount the CF properly. I am 
> not sure if I have provided the correct mapping in the lilo.conf, but the 
> kernel at least report CHS=980/8/32 which I think is what the BIOS in 4801 
> expect.

you shouldn't need to place chs info in the lilo.conf at all.

> One reason I suspect this is that I did not find any /dev/hda* in the 
> pebble-distro that I downloaded. That was what I copied onto the CF after 
> modifying /etc/lilo.conf, /etc/inittab and /etc/fstab.

> Here is all of the output from booting with PXE:
> ----
> Freeing unused kernel memory: 76k freed
> Warning: unable to open an initial console.

Switch this back to ttyS0 not ttyS00 and it should fix the error.


More information about the Soekris-tech mailing list