I copied this procedure with fedora. My client did not like shim.efi but booted fine with grubx64.efi.  grub gave me a prompt instead of a menu even though I had grub.cfg. Can I get a menu with pxe?

my tftpboot looks like     tftpboot / images / pxeboot / vmlnuz
                                                / images / pxeboot / initrd.img
                                                / uefi / fedora/grub.cfg
                                                / uefi / grubx64.efi
                                                / uefi / shim.efi
grub.cfg  looks like:
---
set timeout=600
set default=0

menuentry 'Fedora Workstation' {
     linuxefi /images/pxeboot/vmlinuz ip=dhcp noipv6
     initrdefi /images/pxeboot/initrd.img
}
---

/etc/dnsmasq.conf  looks like:
---
# Configuration file for dnsmasq:

# Turn on the debugging
log-dhcp

# Don't function as a DNS server
port=0

# kill multicast
dhcp-option=vendor:PXEClient,6,2b

# This range(s) is for the public interface, where dnsmasq functions
# as a proxy DHCP server providing boot information but no IP leases.
# Any ip in the subnet will do, so you may just put your server NIC ip here.
dhcp-range=192.168.0.5,proxy

# Set the boot filename for netboot/PXE. You will only need this if you want to
# boot machines over the network and you will need the built in TFTP server.

#pxe-prompt="What system shall I netboot?", timeout before first available action is taken:
pxe-prompt="Press F8 for the Menu.", 5

#Loads <tftp-root>/pxelinux.0 from dnsmasq TFTP server.
pxe-service=x86PC, "Install Fedora Workstation, (BIOS)", bios/pxelinux

#Loads <tftp-root>/uefi/shim.efi from dnsmasq TFTP server.
pxe-service=X86-64_EFI, "Boot From Network, (UEFI)", uefi/grubx64
pxe-service=BC_EFI, "Boot From Network, (UEFI)", uefi/grubx64

# Enable dnsmasq's built-in TFTP server
enable-tftp

# Set the root directory for files available via FTP.
tftp-root=/srv/tftpboot
---



On Wed, Nov 18, 2015 at 12:24 PM, Gordon Messmer <gordon.messmer@gmail.com> wrote:
On 11/17/2015 07:19 PM, Louis Garcia wrote:
I am having trouble setting up PXE for F23. I have configured dnsmasq  > for older BIOS pxe and all is working. On newer uefi I get a ip >
assigned and get to the PXE Menu. After that everything quits and > returns to the bios. Any know how to set this up? I could only find > dated information and nothing current for uefi. shim.efi and > grubx64.efi has something to do with it.

If you want to do this manually:

In ISC dhcpd.conf, use:

         next-server config.example.com;
         if option architecture-type = 00:07 {
                 filename "shim.efi";
         } else {
                 filename "pxelinux.0";
         }

Then, in your tftp server you'll need 3 files from the shim and
grub2-efi packages.  I used this script:

---
#!/bin/sh

wget
http://centos.s.uw.edu/centos/7/os/x86_64/Packages/shim-0.7-5.2.el7.centos.2.x86_64.rpm

wget
http://centos.s.uw.edu/centos/7/os/x86_64/Packages/grub2-efi-2.02-0.16.el7.centos.x86_64.rpm


mkdir tmp

rpm2cpio shim-0.7-5.2.el7.centos.2.x86_64.rpm | (cd tmp && cpio -ivd)
rpm2cpio grub2-efi-2.02-0.16.el7.centos.x86_64.rpm | (cd tmp && cpio -ivd)

cp tmp/boot/efi/EFI/centos/shim.efi ../
cp tmp/boot/efi/EFI/centos/grubx64.efi ../
cp tmp/boot/efi/EFI/centos/fonts/unicode.pf2 ../grub/fonts/

rm tmp -rf
---

Configuration files are in EFI/centos (relative to the TFTP root) rather
than pxelinux.cfg.  They're named grub.cfg-01-<mac>, and use grub syntax
rather than isolinux syntax.

A simple example:

---
set timeout=600
set default=0

menuentry "localboot" {
         insmod chain
         set root=(hd0)
         chainloader +1
}

menuentry "c7" {
         linuxefi /c7/vmlinuz ks=http://config.example.com/kickstart/c7s
ksdevice=eth0 net.ifnames=0 biosdevname=0
         initrdefi /c7/initrd.img
}
--
users mailing list
users@lists.fedoraproject.org
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
Have a question? Ask away: http://ask.fedoraproject.org