[syslinux] Syslinux EFI + TFTPBOOT Support
Gene Cumm
gene.cumm at gmail.com
Fri Mar 7 13:56:31 PST 2014
On Fri, Mar 7, 2014 at 10:50 AM, Steven Shiau <steven at nchc.org.tw> wrote:
>
> On 2014年03月07日 23:05, Ady wrote:
>> I understand that these remarks might seem not the main issue, but I
>> tend to think that once you are successful while using only "default"
>>
>> values and in a minimalistic case, you could add complexity
>> (different paths, multiple firmwares, additional kernels, multiple
>> cfg files...).
> Ady,
> Thanks. I will follow your advice to test more.
>
> Gene,
> You mentioned you have booted several EFI64 systems with x86-64 kernels
> successfully.
> Could you please share your config files of dhcp, tftpd, pxelinux, and
> the tree of your tftpboot dir?
> Thanks in advance.
In /etc/vmware/vmnet8/dhcpd/dhcpd.conf I added the following:
host 7x {
hardware ethernet 00:0C:29:38:6B:6E;
filename "e6/bootx64.efi";
next-server 172.21.1.1;
# option vendor-encapsulated-options
d2:1B:68:74:74:70:3A:2F:2F:31:37:32:2E:32:31:2E:31:2E:31:2F:74:66:74:70:2F:65:36:2F:00:FF;
}
Currently atftpd (better logging and not interested in 92+MiB files
via TFTP when I have HTTP).
>From /tftpboot, I have a directory e6/ containing all EFI64 files and
a bunch of symlinks within the directory and to the parent (where I
keep BIOS stuff, including some kernel/initrds that can do BIOS and
EFI64). bootx64.efi is a symlink to syslinux.efi. syslinux.efi is a
symlink to slcur/syslinux.efi. slcur is a symlink to a directory
containing whatever version I'm testing (say sl603p7/ for 6.03-pre7)
since I have about 20 versions prepped for use at the moment, half of
which I built for testing various patches.
e6/b/ is a symlink to ../b/ and contains tck3810i64.bz (TinyCore 5.0
x86-64 kernel), tc502rt32.gz (TinyCore 5.0.2 root-only 32bit),
tc502rt32m64.gz (TinyCore 5.0.2 modules for the x86-64 kernel) and
tckscsi64.cgz (A CPIO.GZ containing the SCSI modules for the x86-64
kernel and a file to mark it as loaded on boot).
The LABEL stanza I use is:
LABEL tc
MENU LABEL TC
LINUX b/tck3810i64.bz
APPEND via-tftp
initrd=b/tc502rt32.gz,b/tc502rt32m64.gz,b/tckscsi64.cgz vga=771
SYSAPPEND 2
I have a restart script as follows (which must run as root):
#!/bin/bash
PID=$(ps ax|grep '^.\{22\}0:00 /usr/bin/vmnet-dhcpd.*vmnet8'|awk '{print$1}')
echo "KIlling pid $PID"
kill $PID
/usr/bin/vmnet-dhcpd -s 6 -cf /etc/vmware/vmnet8/dhcpd/dhcpd.conf -lf
/etc/vmware/vmnet8/dhcpd/dhcpd.leases -pf
/var/run/vmnet-dhcpd-vmnet8.pid vmnet8
--
-Gene
More information about the Syslinux
mailing list