Page 1 of 1

[Solved] UEFI PXE Networkboot

Posted: 19 Nov 2014, 08:27
by max.muster
Hi,

I just downloaded the new Porteus-Kiosk-3.1.3 which should work with UEFI. I have tried it an it works with usb boot stick.
Anyway I could not figure out how to make it work using PXE. I am using Porteus Kiosk (Ver 3.0) on legacy BIOS based thin clients and it works great.
Any help how to get Porteus-Kiosk-3.1.3 to load on UEFI based clients via PXE network boot would be appreciated!

Re: UEFI PXE Networkboot

Posted: 19 Nov 2014, 10:04
by fanthom
please have a look on this:
https://access.redhat.com/documentation ... g-efi.html

seems that you have to provide grub.efi image instead of pxelinux.0 to the clients. modifications to the initrd may be also necessary as client should download grub configuration file.
i'll have a look on this over the weekend but if you find something yourself then please post so i could add this function to Porteus Kiosk 3.2 planned for December (no much time left).

thanks

Re: UEFI PXE Networkboot [Solved]

Posted: 20 Nov 2014, 10:35
by max.muster
Hi,

so I finally succeded. Here is a very short how-to and some additional links to help anyone else with this problem:
1.) First I check the Ubuntu site regarding PXE-netboot install https://wiki.ubuntu.com/UEFI/PXE-netboot-install
2.) Download UEFI signed grub image from http://archive.ubuntu.com/ubuntu/dists/ ... efi.signed
3.) The I took the EFI boot file (bootx64.efi) from the Ubuntu 14.04-server-amd64.iso. This file is located on the iso image in the directory EFI/BOOT
4.) Created an ISO with the Porteus Kiosk Wizard with PXE support
5.) Installed Apache2, tftpd-hpa and isc-dhcp server on my ubuntu server

Configuration of tftpd-hpa:
1.) tftp-root is located at /var/lib/tftpboot
2.) Created directory grub and pxelinux in tftp-root directory and the directory pxelinux.cfg in/var/lib/tftpboot/pxelinux
3.) Copied grubnetx64.efi.signed to /var/lib/tftpboot/grubnetx64.efi
4.) Copied bootx64.efi to /var/lib/tftpboot/pxelinux
5.) Copied vmlinuz (from Porteus Kiosk Wizard created ISO to /var/lib/tftpboot/pxelinux
6.) Copied initrd.xz and initrdpxe.xz (from Porteus Kiosk Wizard created ISO to /var/lib/tftpboot/pxelinux and /var/lib/tftpboot/pxelinux/pxelinux.cfg
7.) Created default grub.cfg configuration file in /var/lib/tftpboot/grub and added these lines

Code: Select all

set timeout=0
menuentry "Load Porteus Kiosk" {
  linux /pxelinux/vmlinuz gfxpayload=800x600x16,800x600 -- quiet http_server=10.4.63.3:80/uefi/
  initrd /pxelinux/initrd.xz /pxelinux/pxelinux.cfg/initrdpxe.xz
}
Configuration of dhcpd.conf:
1) Modified dhcpd.conf to serve a subnet with pxe clients:

Code: Select all

authoritative;
subnet 10.4.63.0 netmask 255.255.255.0 {
interface eth1;
  option domain-search "yourdomain.name";
  option domain-name-servers 10.4.63.10;
  option domain-name "yourdomain.name";
  option broadcast-address 10.4.63.255;
  option routers 10.4.63.1;
  range 10.4.63.20 10.4.63.50;

if substring( option vendor-class-identifier , 0 , 9 ) = "PXEClient" {
  filename "pxelinux/bootx64.efi";
}
Apache Configuration
1) Created directory uefi in the apache default documents root directory
2) Copied directories docs and boot from Porteus Kiosk Wizard created iso to uefi

Well then I restarted tftpd-hpa, isc-dhcp server and apache2 and it worked!

Tested on VMWare Workstation 10 (efi enabled) and Shuttle XS36V4 (boot Secure boot enabled and disabled)

Best regards!

Re: UEFI PXE Networkboot

Posted: 20 Nov 2014, 13:46
by fanthom
great stuff!
i'm happy that the method you described does not require any modifications to kiosk core (kernel, initrd) and it's just a mater of configuration on the server side.

thanks a lot for this

[Solved] UEFI PXE Networkboot

Posted: 09 Sep 2021, 11:54
by guilhermerso
Worked like a charm! Thank you so much!

[Solved] UEFI PXE Networkboot

Posted: 10 Sep 2021, 03:57
by Bicephale
Porteus didn't have to deal with CherryTrail hybrid 32-64 bootloader UEFi-ONLY systems in 2014 i guess...

[Solved] UEFI PXE Networkboot

Posted: 07 Oct 2022, 08:11
by argrig
It works on systems with old bios but on uefi systems (secure boot disabled) "cr reports bad signature" after downloading kernel and initrd. UEFI option enabled in iso wizard. Can anyone help with the issue?