FC4 CF-based Router

Bob Chiodini rchiodin at bellsouth.net
Mon Dec 19 16:46:04 UTC 2005


On Mon, 2005-12-19 at 07:31 -0800, Steven Ringwald wrote:
> Bob Chiodini wrote:

> Sorry for the confusion. I have been trying with two different drives. 
> One is a USB key-fob thing, which comes up as a SCSI drive (sda), and 
> the other is a CF card plugged into an IDE convertor (this comes up as 
> hda). When I couldn't get the USB fob to work, I tried the CF card, 
> since the IDE modules should already be in the kernel, and therefore 
> should be slightly simpler.
> 
> >Using the linuxrc script above, what happens if you cd /sysroot, then
> >run pivot_root . initrd?  /sysroot/initrd must exist.
> >  
> >
> 
> Yes. It does. What happens is that it returns EINVAL, because it is a 
> CPIO-style image, not a ramfs.

Have you tried building it into a compressed ramfs?  Does the 2.6 kernel
support ramfs?  Might be an option.  

> 
> >When linuxrc exits the kernel should run init.  Is busybox compiled for
> >x86_64 and statically linked?
> >  
> >
> Yes. I went so far as to go to the source and get the svn copy/build it. 
> Ldd reports "not a dynamic executable" and file says ELF 64-bit LSB 
> executable.
>  That seemed to work a little better, though pivot_root/switch_root 
> threw up on my shoes. I was able to get it to chroot into the target 
> filesystem, though I cannot seem to run init.

Okay that explains the switchroot.  

If you use nash what error does switchroot produce?

I also noticed that switch_root, from busybox has an open bug:

http://bugs.busybox.net/view.php?id=543

Further searching led to this:

http://lkml.org/lkml/2005/11/15/384

Which might be relevant.  From the email in this thread it sounds like
chroot .  is what you need.  What happens if you do something like this:

--- at the end of linuxrc

echo 0x0100 > /proc/sys/kernel/real-root-dev

echo Starting system
cd $SYSROOT
chroot .
cd /

Letting linuxrc just exit.

Bob...




More information about the fedora-list mailing list