I think you have to check your initrd. For me wiki.archlinux.org directions have been very usefull in that way. Look at the "Network boot NFS root" article. I hope my working configuration will be usefull for you:
dd if=/srv/mixer/boot/gpxe-1.0.1-gpxe.usb of=/dev/<flash_card> for booting client from that flashcard (I use it for clients that cannot boot from network) dhcpd.conf allow booting; allow bootp; group{ option domain-name "home"; option domain-name-servers 192.168.0.254; server-name "server.home"; next-server 192.168.0.254; if exists dhcp-parameter-request-list { option dhcp-parameter-request-list = concat(option dhcp-parameter-request-list,d0,d1,d2,d3); } host mixer { hardware ethernet 00:30:4f:12:d9:a6; fixed-address 192.168.0.51; option routers 192.168.0.254; site-option-space "pxelinux"; option pxelinux.magic f1:00:74:7e; option pxelinux.configfile "pxelinux.cfg/default"; option pxelinux.pathprefix "http://server.home/"; filename "http://server.home/boot.txt"; } } /srv/mixer/boot/boot.txt #!gpxe echo Greetings! kernel http://server.home/vmlinuz-linux rootfstype=nfs root=/dev/nfs nfsroot=192.168.0.254:/srv/mixer,v3,rsize=16384,wsize=16384 ip=::::::dhcp initrd http://server.home/initramfs-linux.img boot /etc/exports /srv/mixer 192.168.0.0/24(rw,fsid=0,no_root_squash,no_subtree_check,async) and I have working archlinux installation in /srv/mixer/ from nginx.conf server { listen 192.168.0.254; server_name server.home; charset utf-8; access_log logs/tftp.access.log; root /srv/mixer/boot; autoindex on; } If you want to boot your client from the standard network card ROM you have to change filename "http://server.home/boot.txt"; to filename "http://server.home/gpxelinux.0"; so the BIOS of the card will boot gpxelinux, who will get paramethers from pxelinux.cfg/default where contents is: default linux label linux kernel http://server.home/vmlinuz-linux append initrd=http://server.home/initramfs-linux.img rootfstype=nfs root=/dev/nfs nfsroot=192.168.0.254:/srv/mixer,v3,rsize=16384,wsize=16384 ip=::::::dhcp I placed all those files and dirs, eg pxelinux.cfg/ boot.txt gpxelinux.0 in the /srv/mixer/boot folder. //Dimitri On Fri, 19 Aug 2011 15:30:40 +0000 Ben Francis <wireless...@gmail.com> wrote: > I have a netboot system that works over TFTP. It consists of vmlinuz and > initrd. > > I want to convert it to gPXE so it will boot across subnets. > > So I put the files on a web server and tried to test from the gPXE command > line: > > *gPXE> kernel http://ip-address/gpxe/vmlinuz > * > That command works. However, > > *gPXE> initrd http://ip-address/gpxe/initrd > * > just slowly fills up the screen with periods. I tried using the > *append *command > from the working pxelinux setup: > > *append ramdisk_blocksize=4096 initrd=/gpxe/initrd root=/dev/ram0 > ramdisk_size=144000000 console=ttyS3 splash=silent vga=791 > * > but gpxe doesn't have append. > > The initrd is about 143MB. > > What to do? > > Ben _______________________________________________ gPXE mailing list gPXE@etherboot.org http://etherboot.org/mailman/listinfo/gpxe