Syslinux

Software Screenshot:
Syslinux
Software Details:
Version: 6.03
Upload Date: 17 Feb 15
Developer: H. Peter Anvin
Distribution Type: Freeware
Downloads: 1308

Rating: 4.5/5 (Total Votes: 2)

Syslinux is an open source project that provides users with a simple and easy to configure bootloader that allows users to boot various operating systems from local disk drives, CDs, and PXE (Preboot Execution Environment).

Supports all important Linux file systems

The project is capable of booting legacy operating systems like DOS. It has been designed from the ground up as a drop-in replacement for the ancient LILO and Legacy GRUB boot managers. By default, it supports the FAT, EXT2, EXT3, EXT4, and Btrfs file systems.

Both BIOS and UEFI-based machines are supported by this bootloader, though various limitations exist for UEFI (Unified Extensible Firmware Interface) systems. It can be easily installed on almost any Linux-based operating system from the default software channels.

How does it work?

Simple, as the Syslinux boot process works by first loading the MBR (Master Boot Record), then search for an active partition, execute the Volume Boot Record (VBR), execute the /boot/syslinux/ldlinux.sys file, load the /boot/syslinux/ldlinux.c32 file, as well as to search for and load the main configuration file (/boot/syslinux/syslinux.cfg).

A standard boot menu entry for Linux-based operating systems is comprised of a MENU LABEL entry that can be anything the user wants (automatically generated from /etc/issue), and a LINUX line with the location of the Linux kernel executable. It can also boot Windows-based OSes.

In addition, it includes a user-configurable APPEND line that should point to the location of the root filesystem, as well as an INITRD entry that contains the location of the initramfs image file generated by mkinitcpio.

Bottom line

Overall, Syslinux is one of the most easy to use and install boot manager for GNU/Linux. It provides users with both text and graphical boot menus, supports automatic boot, chainloading, memtest, HDT, reboot, power off, keyboard remapping, menu hiding, PXELINUX, and clear menu functionality.

What is new in this release:

  • efi64: Add support for booting 32-bit kernels.
  • efi: Use the EFI handover protocol when booting kernels if available.
  • Fix various make targets that became broken when switching to per-firmware object directories, including 'make install' and 'make netinstall'.
  • efi: Improve handling of packet loss in UDP stack.
  • tests: Introduce a new regression test framework designed to ensure bugs are not reintroduced once fixed.
  • efi: Implement localboot support.

What is new in version 4.04:

  • PXELINUX: Fix handling of unqualified DNS names.
  • PXELINUX: Fix timer bug when PXELINUX might be unloaded (Gene Cumm).
  • core/writedec.inc: Fix duplicate declaration and overflow (Gene Cumm).
  • GCC 4.5 fixes.
  • sample directory: Fix Makefile include (Gene Cumm).
  • ver.com: New universal DOS/COMBOOT application to display version information (includes DRMK) (Gene Cumm).
  • rosh.c32: updated; Using getopt() for internal commands to aid parsing options; Fix bugs in ls; add warm reboot and echo (Gene Cumm).
  • com32: fix a file descriptor leak.
  • gfxboot.c32: handle TEXT..ENDTEXT; error out on no LABELs found (Sebastian Herbszt).
  • Fix booting on non-partitioned devices.
  • MBR, isohybrid: Workaround for a BIOS issue on Acer Travelmate and possibly other machines.
  • COM32: Adding ACPI parsing libary
  • HDT: Release 0.4.1 to support ACPI parsing, improved mutli-core/cpu reporting
  • LUA: Updating to 5.1.4-2
  • SYSLINUX: core/diskstart.inc: Reset DS after checksum in case it isn't 0 (Gene Cumm).
  • win64: Script update for additional mingw compiler names (Gene Cumm).
  • diag: New directory for diagnostic-related tools. Add a handoff MBR/VBR and geometry display images (Gene Cumm).
  • MEMDISK: use "mem=" parameter to mark available memory above this point as reserved (core already does alignment) (Gene Cumm).
  • MEMDISK: Additional disk probe checks and debug output (Shao Miller, Gene Cumm).
  • gpxe: add gpxelinuxk.0, based off of undionly.kpxe + new script (Gene Cumm).
  • isohybrid: install the isohdpfx*.bin/isohdppx*.bin files to make isohybrid images in one step with GNU xorriso.
  • PXELINUX: disable a hack that would make localboot work on some machines, but break just about as many. Some machines which worked with "localboot 0" in previous versions may need "localboot -1" in this one. If you have a machine which requires "localboot -1", a copy of the dmidecode or sysdump output would be appreciated.
  • Include a set of diagnostics by Gene Cumm.
  • Fixes for gcc 4.6 and binutils 2.21.51.
  • chain.c32: Allow "uuid" as a synonym to "guid".
  • Handle directory names starting with .. for vfat and iso9660.
  • New MENU HIDDENKEY command to provide a one-keystroke way to activate a boot option from a hidden menu intro screen.

What is new in version 4.03:

  • Don't hang if no configuration file is found.
  • Better support for booting from MBRs which don't pass handover information.
  • EXTLINUX: Try to be smarter about finding the partition offset.
  • chain.c32: support chainloading Dell Real Mode Kernel (Gene Cumm).
  • chain.c32: fix booting in CHS mode.
  • rosh.c32 updated (Gene Cumm).
  • Fix the -s option to the syslinux/extlinux installer (Arwin Vosselman).
  • isohybrid: fix padding of large images (PJ Pandit).

What is new in version 4.02:

  • SYSLINUX: correctly handle the case where the -d option is specified with a non-absolute path, i.e. syslinux -d syslinux instead of syslinux -d /syslinux.
  • ISOLINUX: recognize the directory names /boot/syslinux and /syslinux, and the filename syslinux.cfg in addition to the isolinux-specific names. Thus, syslinux.cfg is now a generic name, whereas isolinux.cfg or extlinux.conf is specific to different derivatives.
  • chain.c32: support setting alternate config filename for stage2 of GRUB Legacy (Gert Hulselmans).
  • whichsys.c32: execute a specific command, based on the Syslinux bootloader variant (Gert Hulselmans).
  • lua.c32: a lot of new bindings added to the "syslinux" namespace: VESA, PCI, DMI, kernel loading (Marcel Ritter).
  • btrfs: print a comprehensive error message if compressed or encrypted files are encountered (neither is currently supported.)
  • SYSLINUX: mtools installer: honor TMPDIR, error out on disk full.
  • Handle fallbacks from EDD to CHS, to deal with systems which announce EDD support but don't actually have it.
  • SYSLINUX: the mtools, DOS and win32 installers now use the new command line options.
  • PXELINUX: fix the use of IP addresses in TFTP :: or tftp:// host syntax.
  • SYSLINUX: experimental Win64 installer (syslinux64.exe).

What is new in version 4.01:

  • ISOLINUX: fix initialization on systems which don't zero low memory.
  • SYSLINUX/EXTLINUX: fix handing of disk read retries in EDD mode.
  • ISOLINUX: change the initialization sequence to avoid problems with certain (old) BIOSes. Special thanks to Helmut Hullen for invaluable debugging support.
  • ifplop.c32: new module which detects if the PLoP Boot Manager already has booted a CDROM or USB drive (Gert Hulselmans).
  • Correct a severe memory overwrite bug, triggered primarily when selecting a very long command line in the menu system.
  • lua.c32: Lua script interpreter, currently experimental.
  • PXELINUX: new option IPAPPEND 4 to append the system UUID to the kernel command line.
  • PXELINUX: display BOOTIF and SYSUUID at startup time, and when Ctrl-N is pressed on the command line.

What is new in version 4.00:

  • Major code base changes; all filesystem rewritten in C. This work was done primarily by Liu Aleaxander (Yuanhan Liu).
  • EXTLINUX: btrfs and ext4 support. btrfs support was done by Alek Du of Intel.
  • EXTLINUX is no longer a separate derivative; extlinux and syslinux both install the same loader (ldlinux.sys); for the Linux-based installers the extlinux binary is used for a mounted filesystem; the syslinux binary for an unmounted filesystem.
  • When loading a new configuration file with the CONFIG command, one can now also specify a new current directory with an APPEND statement.
  • Full ADV support for Syslinux, so boot-once and MENU SAVE works.
  • Full support of GPT-partitioned disks, including disks and/or parititions larger than 2 TiB (if supported by BIOS.)
  • The GPT handover protocol adjusted to the current T13 committee draft; see doc/gpt.txt.
  • HDT: code cleanup, small bugfixes
  • The "linux" syslinux installer (syslinux-nomtools) now has a command-line syntax closer to the extlinux installer. The mtools, dos and win32 installers will get this new syntax eventually, but it is not implemented yet.
  • chain.c32: support booting GPT partitions by index, GUID, label.
  • chain.c32: support booting the Syslinux partition with "fs".
  • chain.c32: implement gpt.txt hand-over protocol.
  • chain.c32: support for chainloading Grub stage 2.
  • PXELINUX: TFTP URL syntax (tftp://) supported even when not running gPXE/gpxelinux.
  • New ls.c32 module to display the contents of the disk from the command line, and pwd.c32 to display the current directory.
  • rosh.c32 (read only shell) updated and hopefully usable.
  • PXELINUX: Support "localboot -1", just like the other derivatives.
  • gfxboot.com removed in favor of gfxboot.c32.
  • New MENU HELP statement to display fullscreen help text as a result of a menu selection.
  • memdiskfind utility that can be used with the phram driver in the Linux kernel to mount a memdisk.
  • ifcpu.c32: Adding usage when no parameters are given, adding PAE support.
  • ifcpu.c32, ifcpu64.c32: handle more than one argument per target.
  • isohybrid: C version which does not require Perl.
  • New command MENU IMMEDIATE to permit hotkeys to activate immediately without needing Enter.
  • mdiskchk.com supports a --no-sequential (or -n) option to suppress the classic all-drive-probing heuristic. Useful on BIOSes who crash/hang when certain drive numbers are probed.
  • ElTorito.Sys DOS driver now scans drive numbers upwards instead of downwards, in order to avoid a fairly common bug on some BIOSes where probing drive 0xFF causes a failure.

What is new in version 3.83:

  • This release adds some minor new features, including the ability to add overrides to DHCP options in the pxelinux binary, a new version of the Hardware Detection Tool, and some fixes to the Gfxboot module.
  • It also includes some additional workarounds for broken BIOSes.

What is new in version 3.82:

  • isohybrid: fix the -partok logic for loading from a partition.
  • ISOLINUX: deal with systems which return from INT 13h with interrupts disabled.
  • Do not invoke the idle handler during large file loads.
  • Simple menu: make ONTIMEOUT work with MENU HIDDEN.
  • PXELINUX: handle TFTP servers which have extra NULs at the end of an OACK packet.

What is new in version 3.80:

  • New shuffler mechanism and API.
  • Rewritten mboot.c32 module.
  • The syslinux_boot_linux() function has been simplified.
  • Don't hang trying to boot a "menu quit" label from the CLI.
  • Fix problem with boot-once "sticking" on some BIOSes.
  • isohybrid: fix problem with images over 2 GB in size.
  • APM poweroff module (poweroff.com) by Sebastian Herbszt.
  • ISOLINUX: fix the handling of large directories. Bug found and fixed by Steffen Winterfeldt.

Similar Software

gummiboot
gummiboot

18 Feb 15

ms-sys
ms-sys

14 Apr 15

rEFIt
rEFIt

17 Feb 15

lxdm
lxdm

9 Dec 15

Other Software of Developer H. Peter Anvin

SuperRescue CD
SuperRescue CD

3 Jun 15

WrapLinux
WrapLinux

3 Jun 15

tftp-hpa
tftp-hpa

15 Apr 15

Comments to Syslinux

Comments not found
Add Comment
Turn on images!