Booting Ubuntu Live CD
-
@george1421 said in Booting Ubuntu Live CD:
http://t-pxe/fog/service/ipxe/boot.php?mac=00:00:00:00:00:00
Thanks for the speedy reply. The output is:
#!ipxe
set fog-ip 192.168.0.22
set fog-webroot fog
set boot-url http://${fog-ip}/${fog-webroot}
cpuid --ext 29 && set arch x86_64 || set arch i386
goto get_console
:console_set
colour --rgb 0x00567a 1 ||
colour --rgb 0x00567a 2 ||
colour --rgb 0x00567a 4 ||
cpair --foreground 7 --background 2 2 ||
goto MENU
:alt_console
cpair --background 0 1 ||
cpair --background 1 2 ||
goto MENU
:get_console
console --picture http://192.168.0.22/fog/service/ipxe/bg.png --left 100 --right 80 && goto console_set || goto alt_console
:MENU
menu
colour --rgb 0xff0000 0 ||
cpair --foreground 1 1 ||
cpair --foreground 0 3 ||
cpair --foreground 4 4 ||
item --gap Host is NOT registered!
item --gap – -------------------------------------
item fog.local Boot from hard disk
item fog.memtest Run Memtest86+
item fog.quickdel Quick Host Deletion
item fog.sysinfo Client System Information (Compatibility)
item fog.ubuntu-net Ubuntu 16.04 Net Installer
item fog.acronis Acronis TrueImage 2016
item fog.ubuntu-mate Ubuntu MATE 16.04
choose --default fog.local --timeout 3000 target && goto ${target}
:fog.local
sanboot --no-describe --drive 0x80 || goto MENU
:fog.memtest
chain memtest
param sysuuid ${uuid}
kernel memdisk initrd=memtest.0 iso raw
initrd memtest.0
boot || goto MENU
:fog.quickdel
login
params
param mac0 ${net0/mac}
param arch ${arch}
param username ${username}
param password ${password}
param delhost 1
isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme
isset ${net2/mac} && param mac2 ${net2/mac} || goto bootme
param sysuuid ${uuid}
:fog.sysinfo
kernel bzImage32 loglevel=4 initrd=init_32.xz root=/dev/ram0 rw ramdisk_size=127000 web=http://192.168.0.22/fog/ consoleblank=0 rootfstype=ext4 storage=192.168.0.22:/images/ storageip=192.168.0.22 loglevel=4 mode=sysinfo
imgfetch init_32.xz
boot || goto MENU
:fog.ubuntu-net
initrd http://t-pxe/fog/iso/ubuntu/ubuntu-amd64-net.iso
chain http://t-pxe/fog/iso/ubuntu/memdisk iso raw
param sysuuid ${uuid}
:fog.acronis
initrd http://t-pxe/fog/iso/acronis/acronis2016.iso
chain http://t-pxe/fog/iso/acronis/memdisk iso raw
param sysuuid ${uuid}
:fog.ubuntu-mate
kernel tftp://t-pxe/os/ubuntu/16.04/mate/vmlinuz.efi
initrd tftp://t-pxe/os/ubuntu/16.04/mate/initrd.lz
imgargs vmlinuz.efi root=/dev/nfs boot=casper netboot=nfs nfsroot=t-pxe:/var/www/fog/dist/ubuntu/16.04/mate/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=us quiet splash ip=dhcp rw
param sysuuid ${uuid}
:bootme
chain -ar http://192.168.0.22/fog/service/ipxe/boot.php##params ||
goto MENU
autobootMany thanks again for your help.
-
@nsherin I’m sorry its taking me so long to answer but I’m checking on something. So please stick with me for a minute.
Also can you tell me what version of FOG (specifically) you are using?
-
This menu item is from my working production server
:os.Ubuntu.Desktop.17.10 kernel nfs://${fog-ip}:/images/os/ubuntu/Desk17.10/casper/vmlinuz.efi initrd nfs://${fog-ip}:/images/os/ubuntu/Desk17.10/casper/initrd.lz imgargs vmlinuz.efi root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/images/os/ubuntu/Desk17.10/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=us quiet splash ip=dhcp rw boot || goto MENU
Here is from your ipxe menu
:fog.ubuntu-mate kernel tftp://t-pxe/os/ubuntu/16.04/mate/vmlinuz.efi initrd tftp://t-pxe/os/ubuntu/16.04/mate/initrd.lz imgargs vmlinuz.efi root=/dev/nfs boot=casper netboot=nfs nfsroot=t-pxe:/var/www/fog/dist/ubuntu/16.04/mate/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=us quiet splash ip=dhcp rw param sysuuid ${uuid}
I did notice that your menu is missing the
boot
instructionboot || goto MENU
I did also notice an out of place sysuuid parameter, but I think FOG is doing that. That extra parameter is not hurting your boot process, I think the missing
boot
command is. -
Thanks for your help. I’m running version 1.5.2
My /etc/exports file:
/images *(ro,sync,no_wdelay,no_subtree_check,insecure_locks,no_root_squash,insecure,fsid=0)
/images/dev *(rw,async,no_wdelay,no_subtree_check,no_root_squash,insecure,fsid=1 -
@nsherin Those settings are correct. What I’m pointing out is wrong is this parameter:
netboot=nfs nfsroot=t-pxe:/var/www/fog/dist/ubuntu/16.04/mate/
The FOG server is only sharing out /images/… yet you are telling the client to get its files from /var/www/fog/dist… That isn’t going to work. Plus the /var/www/… path is the base directory for the web server.
My instructions that I posted show you expanding the ubuntu iso image to /images/os/ubuntu/… which IS in the nfs export path.
With iPXE you can use any of several protocols to get to your files.
if you use
tftp:// the base path is /tftpboot
http:// the base path is /var/www/html
nfs:// the base path is /imagesThe issue is the kernel it self has to reach out to this path you defined
nfsroot=t-pxe:/var/www/fog/dist/ubuntu/16.04/mate/
Yet it can’t get there because /var/www is not exported from the FOG server only /images and /images/dev is.Look at my menu item I posted below, you can see the nfs:// is used for ipxe to deliver the files as well as the nfsroot path for ubuntu’s kernel.
-
@george1421 said in Booting Ubuntu Live CD:
I’ve got a bit further - I’ve added
boot || goto MENU
I now get a message ‘Unable to find a live file system on the network’:
Also, do you know the parameters I’d need in locale= and keyboard-configuration/layoutcode for a UK keyboard?
Many thanks.
-
@nsherin The problem you now see is exactly what I described below. Fix your nfsroot path and file locations.
-
@nsherin said in Booting Ubuntu Live CD:
Also, do you know the parameters I’d need in locale= and keyboard-configuration/layoutcode for a UK keyboard?
I would say the local for your side of the pond would be
en_GB.UTF-8
-
Thanks for that - I’ve moved the files from the DVD into /images/os/ubuntu/16.04/mate and modified the parameters to read:
kernel nfs://t-pxe/images/os/ubuntu/16.04/mate/casper/vmlinuz.efi
initrd nfs://t-pxe/images/os/ubuntu/16.04/mate/casper/initrd.lz
imgargs vmlinuz.efi root=/dev/nfs boot=casper netboot=nfs nfsroot=t-pxe:/images/os/ubuntu/16.04/mate/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=us quiet splash ip=dhcp rw
boot || goto MENUIt’s still complaining about the lack of a file system on the network.
-
@nsherin said in Booting Ubuntu Live CD:
ok next change (understand I’m swagging it a little)Possibly it doesn’t like the dns names here of
t-pxe
. Replace thet-pxe
value with the iPXE menu variable of${fog-ip}
That will then set the ip address of the fog server in there instead of the dns names. Refer to my working menu. on how to place the ipxe variable. -
Thanks! That worked! I replaced t-pxe with the server’s IP 192.168.0.22 and I now have a booted live CD!
-
Oh and for a UK keyboard, the syntax is:
locale=en_GB.UTF-8 keyboard-configuration/layoutcode=gb
-
@nsherin Issue solved then?
-
Almost - I’m just trying Ubuntu Server now and have added another menu option:
Menu Item: fog.ubuntu-server
Description: Ubuntu Server 16.04
Parameters:
kernel nfs://192.168.0.22/images/os/ubuntu/16.04/server/install/vmlinuz
initrd nfs://192.168.0.22/images/os/ubuntu/16.04/server/install/initrd.gz
imgargs vmlinuz root=/dev/nfs boot=casper netboot=nfs nfsroot=192.168.0.22:/images/os/ubuntu/16.04/server/ locale=en_GB.UTF-8 keyboard-configuration/layoutcode=gb quiet splash ip=dhcp rw
boot || goto MENUI have copied the Ubuntu Server CD contents into /images/os/ubuntu/16.04/server/
It boots to the Ubuntu installer and then asks me to insert a CD-ROM.
Any ideas would be great. Thanks!
-
@nsherin Again please review this post (especially
Note1
where the installer asks for the cdrom during installation. And then note2 where it says where to get what you need): https://forums.fogproject.org/topic/10944/using-fog-to-pxe-boot-into-your-favorite-installer-images/6 -
Thanks for that - I’ve got it booting - my menu entry now looks like:
Menu Item: fog.ubuntu-server
Description: Ubuntu Server 16.04
kernel tftp://192.168.0.22/os/ubuntu/16.04/server/vmlinuz
initrd tftp://192.168.0.22/os/ubuntu/16.04/server/initrd.gz
imgargs vmlinuz initrd=initrd.gz root=/dev/nfs netboot=nfs nfsroot=192.168.0.22:/images/os/ubuntu/16.04/server/ locale=en_GB.UTF-8 keyboard-configuration/layoutcode=gb
boot || goto MENUMany thanks again for your help!