You are not logged in.

#1 2006-03-26 15:52:27

kleptophobiac
Member
From: Sunnyvale, CA
Registered: 2004-04-25
Posts: 481

Can't make netboot (pxelinux) and initrd play nice

I have a diskless mythtv frontend system... but it is woefully out of date (still using devfs) and it needs an update.

So I started work on a non production machine and installed arch to the hard drive like usual. Then I mounted an NFS folder and copied over just about everything (created the three static dev entries too). I also added the kernel and initrd images to the tftp server and made [what i think is] a proper pxelinux file for it:

default linux
label linux
        kernel  pxelinux.cfg/mythfe02/vmlinuz26
        append  initrd=pxelinux.cfg/mythfe02/initrd26.img ip=dhcp root=/dev/nfs nfsroot=192.168.1.5:/diskless/mythfe02 vga=791

The machine downloads the kernel and initrd ok, and initializes the kernel ok, but fails with this:

mount: Mounting /dev/root on /new_root failed: No such device or address
pivot_root: pivot_root: No such file or directory
umount: /initrd: No such file or directory
umount: /initrd: No such file or directory
/linuxrc: 497: /sbin/busybox: not found
Freeing unused kernel memory: 268k freed

I know the nfs share works since I can switch over to my old kernel and it starts booting daemons and gets to the login prompt just fine. Anybody done initrd based netbooting before?

Offline

#2 2006-03-26 20:41:18

sodface
Member
Registered: 2005-12-26
Posts: 38

Re: Can't make netboot (pxelinux) and initrd play nice

I successfully netbooted a diskless system using pxelinux and minimax, which is a 32mb distro based on Arch's initscripts (if you haven't heard of it.)

So I'm not sure if this will help at all since minimax is different, but it does use an initrd.

My setup on the server side had a directory named "pxelinux.cfg" and in that directory, a file named "default"

The default file contained the following:

serial 0 9600 0

prompt 1
timeout 30

default Minimax  1024x768

label Minimax  1024x768
        kernel vmlinuz 
        append init=/linuxrc root=/dev/ram0 initrd=initrd load_ramdisk=1 promt_ramdisk=0 ramdisk_size=31000 vga=791 keepinitrd=1 

vmlinuz, initrd, and pxelinux.0 were all in the tftp server root.

Minimax's initrd is the whole root filesystem - it's 32MB or so.  There is no pivot_root happening in this case I don't believe.

I was using Tftpd32 on a windows box as the server.

So, this info should help you not at all, but at least it is a reply huh?  :?

Offline

#3 2006-03-26 21:15:35

kleptophobiac
Member
From: Sunnyvale, CA
Registered: 2004-04-25
Posts: 481

Re: Can't make netboot (pxelinux) and initrd play nice

curious... i wonder what the process of handing over from initrd to an nfs root should look like. I'll play around with some of the settings you're using.

thanks!

Offline

Board footer

Powered by FluxBB