[install-guide/F21-rewrite] Grab the syslinux binaries for BIOS clients, and grub+shim for UEFI

Pete Travis immanetize at fedoraproject.org
Sat Sep 6 22:22:36 UTC 2014


commit dd10c9502bc5471a97e82d1b4c626a2fd30432d8
Author: Pete Travis <immanetize at fedoraproject.org>
Date:   Sat Sep 6 16:22:30 2014 -0600

    Grab the syslinux binaries for BIOS clients, and grub+shim for UEFI

 en-US/Network_based_Installations.xml |  143 +++++++++++++-------------------
 1 files changed, 58 insertions(+), 85 deletions(-)
---
diff --git a/en-US/Network_based_Installations.xml b/en-US/Network_based_Installations.xml
index 21a7ee6..708d528 100644
--- a/en-US/Network_based_Installations.xml
+++ b/en-US/Network_based_Installations.xml
@@ -151,44 +151,64 @@
               </step>
             </procedure>
           </section>
-          
-                    <step>
-                        <para>
-                            Configure your <systemitem class="protocol">DHCP</systemitem> server to use the boot images packaged with SYSLINUX. If you do not have a DHCP server installed, see the <citetitle>&PRODUCT; Networking Guide</citetitle>, available at the <ulink url="http://docs.fedoraproject.org/">Fedora Documentation website</ulink>, for instructions.
-                        </para>
-  </step>
-                    <step>
-                        <para>
-                            You now need the <filename>pxelinux.0</filename> file from the SYSLINUX package in the ISO image file. To access it, run the following commands as root:
-                        </para>
-                        <screen>
-<prompt>#</prompt> <command>mount -t iso9660 /<replaceable>path_to_image/name_of_image</replaceable>.iso /<replaceable>mount_point</replaceable> -o loop,ro</command>
-                        </screen>
-                        <screen>
-<prompt>#</prompt> <command>cp -pr /<replaceable>mount_point</replaceable>/Packages/syslinux-<replaceable>version-architecture</replaceable>.rpm /<replaceable>publicly_available_directory</replaceable></command>
-                        </screen>
-                        <screen>
-<prompt>#</prompt> <command>umount /<replaceable>mount_point</replaceable></command>
-                        </screen>
-                        <para>
-                            Extract the package:
-                        </para>
-                        <screen>
-<prompt>#</prompt> <command>rpm2cpio syslinux-<replaceable>version-architecture</replaceable>.rpm | cpio -dimv</command>
-                        </screen>
-                    </step>
-                    <step>
-                        <para>
-                            Create a <filename>pxelinux/</filename> directory within <filename>tftpboot/</filename> and copy the <filename>pxelinux.0</filename> file into it:
-                        </para>
-                        <screen>
-<prompt>#</prompt> <command>mkdir /var/lib/tftpboot/pxelinux</command>
-                        </screen>
-                        <screen>
-<prompt>#</prompt> <command>cp <replaceable>publicly_available_directory</replaceable>/usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/pxelinux</command>
-                        </screen>
-                    </step>
-                    <step>
+          <section id="pxe-bootloader">
+            <title>Providing and configuring bootloaders for PXE clients</title>
+            <procedure>
+              <title>Getting the bootloader files</title>
+              <step>
+                <para>
+                  Get the <package>syslinux</package> bootloader for BIOS clients.
+                </para>
+                <substeps>
+                  <step>
+                    <para>
+                      Install the <package>syslinux</package> package.
+                    </para>
+                    <screen>
+                      <command>yum install syslinux</command>
+                    </screen>
+                  </step>
+                  <step>
+                    <para>
+                      Create a directory for the bootloader files, and make them available there.
+                    </para>
+                    <screen>
+                      <command>mkdir -p <filename class="directory">/var/lib/tftpboot/pxelinux</filename></command>
+                      <command>cp <filename>/usr/share/syslinux/{pxelinux.0,vesamenu.c32}</filename> <filename class="directory">/var/lib/tftpboot/pxelinux/</filename></command>
+                    </screen>
+                  </step>
+                </substeps>
+              </step>
+              <step>
+                <para>Get the bootloader files for UEFI systems</para>
+                <substeps>
+                  <step>
+                    <para>
+                      Install the <package>shim</package> and <package>grub2-efi</package> packages.  If your server is a BIOS system, you <emphasis>must install the packages to a temporary install root</emphasis>.  Installing them directly on a BIOS machine will attempt to configure the system for UEFI booting and cause problems.
+                    </para>
+                    <screen>
+                      <command>yum install shim grub2-efi --installroot=/tmp/fedora --releasever &PRODVER;</command>
+                    </screen>
+                  </step>
+                  <step>
+                    <para>
+                      Create a directory for the bootloader files, and make them available there.
+                    </para>
+                    <screen>
+                      <command>mkdir -p <filename class="directory" >/var/lib/tftpboot/uefi</filename></command>
+                      <command>cp <filename>/tmp/fedora/boot/efi/EFI/fedora/{shim.efi,grubx64.efi}</filename> <filename>/var/lib/tftpboot/uefi/</filename></command>
+                    </screen>
+                  </step>
+                </substeps>
+              </step>
+            </procedure>
+
+
+
+
+
+
+                   <step>
                         <para>
                             Add a configuration file to the <filename class="directory">pxelinux/</filename> directory. The file name should either be <literal>default</literal>, or based on the system's IP address. For example, if your machine's IP address is 10.0.0.1, the file name will be <filename>0A000001</filename>.
                         </para>
@@ -239,54 +259,7 @@ label local
                 </para>
             </section>
 
-            <section id="sect-network-boot-setup-uefi">
-                <title>Configuring a PXE Server for UEFI-based Clients</title>
-                <para>
-                    The following procedure will prepare the PXE server for booting UEFI-based AMD64 and Intel&nbsp;64 systems. For information on BIOS-based systems, see <xref linkend="sect-network-boot-setup-bios" />.
-                </para>
-                <procedure>
-                    <title>Configuring PXE Boot for UEFI-based Systems</title>
                    <step>
-                       <para>
-                            You now need the <filename>shim.efi</filename> file from the <package>shim</package> package and the <filename>grubx64.efi</filename> file from the <package>grub2-efi</package> package in the ISO image file. To access them, run the following commands as root:
-                        </para>
-                        <screen>
-<prompt>#</prompt> <command>mount -t iso9660 /<replaceable>path_to_image/name_of_image</replaceable>.iso /<replaceable>mount_point</replaceable> -o loop,ro</command>
-                        </screen>
-                        <screen>
-<prompt>#</prompt> <command>cp -pr /<replaceable>mount_point</replaceable>/Packages/shim-<replaceable>version-architecture</replaceable>.rpm /<replaceable>publicly_available_directory</replaceable></command>
-                        </screen>
-                        <screen>
-<prompt>#</prompt> <command>cp -pr /<replaceable>mount_point</replaceable>/Packages/grub2-efi-<replaceable>version-architecture</replaceable>.rpm /<replaceable>publicly_available_directory</replaceable></command>
-                        </screen>
-                        <screen>
-<prompt>#</prompt> <command>umount /<replaceable>mount_point</replaceable></command>
-                        </screen>
-                        <para>
-                            Extract the packages:
-                        </para>
-                        <screen>
-<prompt>#</prompt> <command>rpm2cpio shim-<replaceable>version-architecture</replaceable>.rpm | cpio -dimv</command>
-                        </screen>
-                        <screen>
-<prompt>#</prompt> <command>rpm2cpio grub2-efi-<replaceable>version-architecture</replaceable>.rpm | cpio -dimv</command>
-                        </screen>
-                    </step>
-                    <step>
-                        <para>
-                            Create a directory within the <filename class="directory">tftpboot/</filename> directory named <filename class="directory">uefi/</filename> for the EFI boot images, and then copy them from your boot directory:
-                        </para>
-                        <screen>
-<prompt>#</prompt> <command>mkdir /var/lib/tftpboot/uefi</command>
-                        </screen>
-                        <screen>
-<prompt>#</prompt> <command>cp <replaceable>publicly_available_directory</replaceable>/boot/efi/EFI/fedora/shim.efi /var/lib/tftpboot/uefi/</command>
-                        </screen>
-                        <screen>
-<prompt>#</prompt> <command>cp <replaceable>publicly_available_directory</replaceable>/boot/efi/EFI/fedora/grubx64.efi /var/lib/tftpboot/uefi/</command>
-                        </screen>
-                    </step>
-                    <step>
                         <para>
                             Add a configuration file named <filename>grub.cfg</filename> to the <filename class="directory">uefi/</filename> directory. A sample configuration file at <filename>/var/lib/tftpboot/uefi/grub.cfg</filename> might look like:
                         </para>


More information about the docs-commits mailing list