Talk:Preboot Execution Environment

From ArchWiki
(Redirected from Talk:Archiso-as-pxe-server)

Methods for PXE booting non-Arch iso's

The arch installation iso has all the pxe image files required for network booting baked into the iso, but for RHEL/CentOS and most other distro's this is not the case. I started from the dnsmasq, darkhttpd method outlined in the instructions for installing Arch iso by PXE and added a few tweaks and extra steps to get it to work for RHEL (my blog post: [1]). I am sure there are others out there who have gotten similar methods to work. I think it would be helpful to add these to the wiki. Gojun077 (talk) 19 September 2014

Hi, it's customary to keep only Arch-specific content in this wiki, or content that applies in general, including Arch. However I also understand that it would be silly to ask you to add your method to every wiki of every distro you know :) In this case I see only two solutions:
  1. You create a See also section at the bottom and link to your blog post with a well-designed description full of keywords that can help people searching for a generic way to PXE-boot non-Arch iso's.
  2. You create a separate section (i.e. you don't add notes to the existing Arch-specific sections) for this tweaked procedure that covers a hypothetic scenario like "If you are using a custom Arch iso (or another distribution's) that does not contain PXE images, ...", sort of circumventing the above-mentioned custom, also making sure not to duplicate content existing in other sections/articles; in this way this new section would probably have good chances of "surviving" in the medium/long term.
-- Kynikos (talk) 03:13, 20 September 2014 (UTC)
When facing such question, I always asking my self: If I am a user who want to PXE boot RHEL, where will I go to find such information. It should be RHEL documentation or wiki.
So even if you add valuable information here, few users will benefit from it. It will increase maintenance burden because few Arch users could fix RHEL specific info when it is out of date.
--Fengchao (talk) 13:47, 29 September 2014 (UTC)

Traditional method

I wish I had the ability to add this myself.

A method for using standard dhcpd/tftpd/httpd servers would be excellent. I was surprised to be unable to find anything online to help with this, so I suspect it may be more difficult than it is here with dnsmasq/darkhttpd. --Bananabrain (talk) 00:14, 7 August 2015 (UTC)

UEFI

The method described here using lpxelinux.0 only works for systems with BIOS/legacy firmware. Systems with UEFI firmware will have to be directed to a syslinux.efi file (see http://www.syslinux.org/wiki/index.php?title=PXELINUX#UEFI) or enable legacy mode. Jrmrjnck (talk) 05:20, 7 April 2016 (UTC)

The currently generated archiso file does not contain the required syslinux files for booting a PXE image. I have filed a bug for this at https://bugs.archlinux.org/task/50188
Lekensteyn (talk) 21:21, 28 July 2016 (UTC)

PXE elements' path

While trying to set up a PXE environment using this wiki page I encountered several problems.

(Downloading and mounting the Arch ISO was not a problem.) Paths specified in dnsmasq's dhcp-boot and dhcp-option-force options may have changed and need to be modified. Once changed, the syslinux UI can be remotely loaded, but the path to (at least) the HTTP filesystem are not reachable, because the pathprefix specified in the dhcp-option-force=210,... is applied to all files.

The only way that we found to fix this issue, was to copy the whole mounted ISO files to a writable version and to manually modify the path to the HTTP entries by prepending :: in the PXE files, which makes syslinux ignores the prefix specified in dnsmasq.

I don't know if it's possible to modify dnsmasq 's config to make all files reachable without modifying some files from the ISO, or if the ISO's hierarchy changed recently and this wiki page was not updated.

Scotow (talk) 12:26, 14 September 2021 (UTC)

For the latest iso (2022.05.01), the three lines in "BIOS boot from install media" should be replaced by

dhcp-boot=/syslinux/lpxelinux.0
dhcp-option-force=209,syslinux.cfg
dhcp-option-force=210,/syslinux/

Note that this works for the NFS method and I did not verify if the other two works.

Jcplist (talk) 06:18, 13 May 2022 (UTC)

I've tested HTTP and NBD methods and they work fine. I will wait for 7 days before applying the changes to the main page. Here are my intended changes.
  1. Fix the paths in dnsmasq's config in 3.2.1 BIOS boot from install media.
  2. Update the log of darkhttpd in 3.3.1 HTTP and 4.1 Boot
  3. Fix the paths (instead of replacing the entire log) in the log of dnsmasq in 4.1 Boot
  4. Remove the out-of-date flag
Jcplist (talk) 09:52, 14 May 2022 (UTC)
It's sad that someone fixed the path in dnsmasq's config but did nothing else (change the log since the path has changed, remove the flag since it no longer needs, take a glimpse on the talk page ;) ). I will leave the above work to the new contributor.
Jcplist (talk) 14:31, 17 May 2022 (UTC)