syslinux-cli - *Syslinux* boot prompt/command line interface
Syslinuxs boot prompt provides a very simplistic command line interface for loading modules and booting kernels.
COMMAND LINE KEYSTROKES
The command line prompt supports the following keystrokes:
<Enter> boot specified command line <BackSpace> erase one character <Ctrl-U> erase the whole line <Ctrl-V> display the current Syslinux version <Ctrl-W> erase one word <Ctrl-X> force text mode <Tab> list matching labels <F1>..<F12> help screens (if configured) <Ctrl-F><digit> equivalent to F1..F10 <Ctrl-C> interrupt boot in progress <Esc> interrupt boot in progress <Ctrl-N> display network information (PXELINUX only; 3.50-4.06)
At start, the initial working directory for SYSLINUX/ISOLINUX will be the directory containing the initial configuration file. If no configuration file is found, SYSLINUX should default to the install-time working directory, however this is a known issue with some versions including 4.06.
At start, the initial working directory for PXELINUX will be the parent directory of pxelinux.0 unless overridden with DHCP option 210. If no configuration file is found, PXELINUX will start a timer to reboot the system in an attempt to restart the boot process and resolve a possible transient issue.
For kernel-like file names given on the command line, Syslinux will attempt to append file name extensions to the specified file name when the file is not found in the following order: .0[PXELINUX only], .bin[ISOLINUX only], .bs[SYSLINUX only], .bss[SYSLINUX only], .c32, .cbt[Up to 4.06], .com[Up to 4.06] and .img[ISOLINUX 1.65-4.04 only].
The current working directory is always searched first, before PATH, when attempting to open a filename. The current working directory is not affected when specifying a file with an absolute path. For example, given the following file system layout,
/boot/ /bin/ ls.c32 libls.c32 /foo/ libls.c32
assuming that the current working directory is /boot/foo, and assuming that libls.c32 is a dependency of ls.c32, executing /boot/bin/ls.c32 will cause /boot/foo/libls.c32 to be loaded, not /boot/bin/libls.c32, even if /boot/bin is specified in the PATH directive of a config file.
The reason that things work this way is that typically a user will install all library files in the Syslinux installation directory, as specified with the --directory installer option. This method allows the user to omit the PATH directive from their config file and still have things work correctly.
H. Peter Anvin