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?
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? :?
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.