Cannot get linux to complete the pxe boot
-
Hi all I am pretty new to fog but have managed to do some pretty cool stuff with this amazing software. I am currently using version 1.2.0 and I am having one heck of a time getting unbuntu 15.10 to boot the live cd though I know it can bee done. I get this error and I just don’t know what I’m doing wrong (see screen shot) Oh and here is my config setup from the advanced menu.
:MENU
menu
item --gap – ---------------- iPXE boot menu ----------------
item mint 17 Mint 17.2 mint x64
item mac mac reflect
item clone Clonezilla 2015
item ubuntu Ubuntu 15:10
item shell ipxe shell
item return return to previous menu
choose --default return --timeout 5000 target && goto ${target}:mint
kernel http://${fog-ip}/fog/service/ipxe/mint/casper/vmlinuz
initrd http://${fog-ip}/fog/service/ipxe/mint/casper/initrd.lz
imgargs vmlinuz root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/fog/service/ipxe/mint/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=us mirror/country=US
boot || goto failed
goto start:mac
initrd http://${fog-ip}/fog/service/ipxe/mac/mac.iso
chain memdisk iso raw ||
goto MENU:clone
initrd http://${fog-ip}/fog/service/ipxe/clone/clone.iso
chain memdisk iso raw ||
goto MENU:ubuntu
kernel http://${fog-ip}/fog/service/ipxe/ubuntu/casper/vmlinuz.efi
initrd http://${fog-ip}/fog/service/ipxe/ubuntu/casper/initrd.lz
imgargs vmlinuz.efi root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/fog/service/ipxe/ubuntu/casper/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=us mirror/country=US
boot || goto failed
goto start:shell
shell ||
goto MENU:return
chain http://${fog-ip}/${fog-webroot}/service/ipxe/boot.php?mac=${net0/mac} ||
prompt
goto MENUautoboot
of course neither Linux distros work mint wont even try to boot ppast 1 second and Ubuntu starts but fails with the error I posted. in the screenshot. I don’t really know what I’m doing wrong but if someone could help me I would be ever grateful thanks in advance !!!
-
Here’s a really good thread on the subject: https://forums.fogproject.org/topic/4790/how-to-add-live-cd-iso-to-fog-1-2-on-ubuntu-12-04
Here’s an article I wrote up for adding Darik’s boot and nuke ISO, it uses FOG 1.3.0 though (fog trunk): https://wiki.fogproject.org/wiki/index.php/DBAN_(Darik’s_Boot_and_Nuke)
And here’s a link to materials for upgrading to fog trunk if you are interested: https://wiki.fogproject.org/wiki/index.php/Upgrade_to_trunk But please understand that the trunk versions are developmental, bugs are to be expected. When you find them, just report them here under the bugs area. But if you can handle that (esp if your server is virtualized and you can take snapshots), the trunk version has made major strides in features and supported hardware.
That said, it looks like you’ve already found the kernel and init for Ubuntu 15 and have placed it in a web directory… Is there anyway you can just mount the ISO perminantly inside of your /fog/service/ipxe/ubuntu directory? There is an example of this in the DBAN article. Then, after it’s mounted you can point to the kernel and init without swapping them around or removing them from their directories. Just an idea.
If you get it going, please share what you did, this is the most important way you can support fog.
-
@dureal99d Are you sure the directory specified as
nfsroot
is properly exported via NFS?? The error sounds like it’s not. There has been a discussion only a few weeks ago: https://forums.fogproject.org/topic/5957/pxe-netboot-ubuntu-14-04-lts-help -
I don’t know what exporting via nfs means, I assume it means that the folder is read write accessible.
Can I booth this image by placing it in the images folder? or should I extract the total iso to the image folder and set 755 permissions.
If I can get s step by step it would be nice. Inclusively I have tried to upgrade to trunk but I get a cannot access this server apache error.
-
@dureal99d I’ll see if I can do this with the instructions I already have…
-
@Wayne-Workman THank you so much I really need it.
-
I don’t understand how to mount an iso in Ubuntu as relates to fog that is
-
if I must change my nfs what do I do to change it?
-
I think you need to start reading and teaching yourself some stuff if you want to be a happy linux user. Don’t get me wrong. We are happy to help you here but it will we very frustrating for you if you always have to ask about every step and keep waiting for answers.
Ask google for ‘ubuntu mount iso’ and it’ll take you straight to this one: http://askubuntu.com/questions/164227/how-to-mount-an-iso-file (the question is the solution already!)
As well for exporting an NFS share there are lots infos on the net. To make it easy for you I post the short version for you here as NFS-server is already installed on your FOG server.
- Edit /etc/exports to add a line like this:
/var/www/fog/service/ipxe/ubuntu *(ro,async)
- Make sure this is the same directory that you have loop-mounted the iso to (you should see a directory called ‘casper’ in it!)
- Run
sudo exportfs -rav
to make the config change live - Change your iPXE menu and point your nfsroot to the correct location
nfsroot=${fog-ip}:/var/www/fog/service/ipxe/ubuntu/
(I am pretty sure you need to remove the casper dir here)
- Edit /etc/exports to add a line like this:
-
oh I see. Let me be clear I do know Linux and I use it a lot or I wold not have gotten this far trust. however, I am not to good at some more intricate things. with that said I believe I understand what you are saying. I must mount the iso using a loop method in the fog ipxe directory, in which furios iso mount will do well and being as fog already has its nfs exported I can simply piggy back off of it by doing so. so I must make sure the nfsroot point to the iso that is mounted to ensure success. I will give it a try
-
@Sebastian-Roth ok so i made the changes but now i get a permission issue still but i get much further than i ever have. funny thing is it now reports that it is not a directory whatever that means?? any suggestions and yes i am patient enough to wait for what i desire!!!
-
I cannot help if I don’t know what exactly goes wrong. Please upload a screenshot of the new error. Have you tried mounting the NFS share from another linux machine just to make sure it is working?
sudo mkdir -p /mnt sudo mount -t nfs -o nolock 192.168.1.133:/var/www/fog/service/ipxe/ubuntu /mnt sudo ls -al /mnt ..... .. sudo umount /mnt
-
Ok so here is the result, I got it working thanks to a person on this forum named aaoyagi.
When I followed his instructions my Linux distros booted without fail via my fog server over the network!!!
In case anybody wants the steps:
First in your /etc/exports add this line:
/var/www/fog/iso/15.04_64 *(ro,sync,no_wdelay,insecure_locks,no_root_squash,insecure)Then restart your nfs server. If you’re running Ubuntu it’s sudo service nfs-kernel-server restart
Next, extract the Ubuntu iso to a direcotry named 15.04_64 in your /var/www/fog/iso directory.
In your Advanced menu use this:
:MENU
menu
item --gap – ---------------- iPXE boot menu ----------------
item ubuntu15.04_64 Boot Ubuntu 15.04
item return return to previous menu
:ubuntu15.04_64
set path /fog/iso/15.04_64
set nfs_path /var/www/fog/ISO/15.04_64
kernel http://${fog-ip}${path}/casper/vmlinuz.efi || read void
initrd http://${fog-ip}${path}/casper/initrd.lz || read void
imgargs vmlinuz.efi root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:${nfs_path} ip=dhcp splash quiet – || read void
boot || read void
goto startHopefully it works for you too. You don’t have to set the variables. I just did it that way in case I ever have to change where the iso directory lives.