SYSLINUX

Last updated
SYSLINUX
Developer(s) H. Peter Anvin
Stable release
6.03 / October 6, 2014;9 years ago (2014-10-06)
Preview release
6.04-pre3 / February 7, 2019;5 years ago (2019-02-07)
Repository
Operating system Linux
Type Boot loader
License GPL-2.0-or-later
Website www.syslinux.org

The Syslinux Project is a suite of five different boot loaders for starting up Linux distros on computers. It was primarily developed by H. Peter Anvin.

Contents

Components

The Syslinux Project consists of five different boot loaders:

The project also includes two separate menu systems and a development environment for additional modules.

SYSLINUX and ISOLINUX

SYSLINUX was originally meant for rescue floppy disks, live USBs, or other lightweight environments. ISOLINUX is meant for live CDs and Linux installation CDs.

The SYSLINUX bootloader can be used to boot multiple distributions from a single source such as a USB stick. [2]

A minor complication is involved when booting from compact discs. The El Torito standard allows booting in two different modes:

To have this choice is sometimes useful, since ISOLINUX is vulnerable to BIOS bugs.[ which? ] For that reason, it is handy to be able to boot using SYSLINUX. This mostly affects computers built before about 1999, and, in fact, for modern computers the "no emulation" mode is generally the more reliable method. Newer[ which? ] ISOLINUX versions support creation of so-called "hybrid ISO" images, that put both the El Torito boot record of the compact discs and the master boot record of hard disks into an ISO image. This hybrid image could then be written to both a compact disc or a USB flash drive. [3]

PXELINUX

PXELINUX is used in conjunction with a PXE-compliant ROM on a network interface controller (NIC), which enables receiving a bootstrap program over the local area network. [4] This bootstrap program loads and configures an operating system kernel that puts the user in control of the computer. [5] Typically, PXELINUX is used for performing Linux installations from a central network server or for booting diskless workstations.

EXTLINUX

EXTLINUX is a general-purpose bootloader, similar to LILO or GRUB. Since Syslinux 4, EXTLINUX is capable of handling Btrfs, FAT, NTFS, UFS/UFS2, and XFS filesystems.

COMBOOT

SYSLINUX can be extended by COMBOOT modules written in C or assembly language. 32-bit modules typically use the .c32 filename extension. Version 5 and later do not support 16-bit .com modules. [6]

Hardware Detection Tool (HDT)

Since the 3.74 release, the Syslinux project hosts the Hardware Detection Tool (HDT) project, licensed under the terms of GNU GPL. This tool is a 32-bit module that displays low-level information for any IA-32–compatible system. It provides both a command-line interface and a semi-graphical menu mode for browsing. HDT is also available as a bootable ISO and a 2.88 MB floppy disk image. The last update of HDT was in 2015; it has since been discontinued. [7]

See also

Related Research Articles

fsck System tool for checking the consistency of a file system

The system utility fsck is a tool for checking the consistency of a file system in Unix and Unix-like operating systems, such as Linux, macOS, and FreeBSD. The equivalent programs on MS-DOS and Microsoft Windows are CHKDSK, SFC, and SCANDISK.

A boot disk is a removable digital data storage medium from which a computer can load and run (boot) an operating system or utility program. The computer must have a built-in program which will load and execute a program from a boot disk meeting certain standards.

<span class="mw-page-title-main">Live CD</span> Complete, bootable computer installation that runs directly from a CD-ROM

A live CD is a complete bootable computer installation including operating system which runs directly from a CD-ROM or similar storage device into a computer's memory, rather than loading from a hard disk drive. A live CD allows users to run an operating system for any purpose without installing it or making any changes to the computer's configuration. Live CDs can run on a computer without secondary storage, such as a hard disk drive, or with a corrupted hard disk drive or file system, allowing data recovery.

<span class="mw-page-title-main">Optical disc authoring</span> Content publishing on optical disks

Optical disc authoring, including CD, DVD, and Blu-ray Disc authoring, is the process of assembling source material—video, audio or other data—into the proper logical volume format to then be recorded ("burned") onto an optical disc. This act is sometimes done illegally, by pirating copyrighted material without permission from the original artists.

<span class="mw-page-title-main">Multi-booting</span> Act of installing multiple operating systems on a single computer

Multi-booting is the act of installing multiple operating systems on a single computer, and being able to choose which one to boot. The term dual-booting refers to the common configuration of specifically two operating systems. Multi-booting may require a custom boot loader.

Linux Terminal Server Project (LTSP) is a free and open-source terminal server for Linux that allows many people to simultaneously use the same computer. Applications run on the server with a terminal known as a thin client handling input and output. Generally, terminals are low-powered, lack a hard disk and are quieter and more reliable than desktop computers because they do not have any moving parts.

<span class="mw-page-title-main">File system</span> Computer filing system

In computing, a file system or filesystem governs file organization and access. A local file system is a capability of an operating system that services the applications running on the same computer. A distributed file system is a protocol that provides file access between networked computers.

vmlinux Executable file containing the Linux kernel

vmlinux is a statically linked executable file that contains the Linux kernel in one of the object file formats supported by Linux, which includes Executable and Linkable Format (ELF) and Common Object File Format (COFF). The vmlinux file might be required for kernel debugging, symbol table generation or other operations, but must be made bootable before being used as an operating system kernel by adding a multiboot header, bootsector and setup routines.

<span class="mw-page-title-main">GParted</span> Partition editor

GParted is a GTK front-end to GNU Parted and an official GNOME partition-editing application. GParted is used for creating, deleting, resizing, moving, checking, and copying disk partitions and their file systems. This is useful for creating space for new operating systems, reorganizing disk usage, copying data residing on hard disks, and mirroring one partition with another. It can also be used to format a USB drive.

<span class="mw-page-title-main">Das U-Boot</span> Open-source, primary boot the devices operating system kernel

Das U-Boot is an open-source boot loader used in embedded devices to perform various low-level hardware initialization tasks and boot the device's operating system kernel. It is available for a number of computer architectures, including 68k, ARM, Blackfin, MicroBlaze, IBM S360, My66, Motorola 68000, MOS 6502, ARM64, MIPS, Nios, SuperH, PPC, RISC-V and x86.

<span class="mw-page-title-main">Wubi (software)</span> Ubuntu Linux installer for Windows

Wubi is a free software Ubuntu installer, that was the official Windows-based software, from 2008 until 2013, to install Ubuntu from within Windows, to a single file within an existing Windows partition.

<span class="mw-page-title-main">Partimage</span> Disk cloning utility

Partimage is a disk cloning utility for Linux/UNIX environments. Partimage can save partitions in many formats to a disk image. Utilities such as Partimage are useful in a number of situations which are commonly encountered by network administrators as well as advanced computer users who maintain their own systems. The last stable release was in 2010; since then, one of Partimage's authors has worked on FSArchiver, which has broader functionality than Partimage.

The Linux booting process involves multiple stages and is in many ways similar to the BSD and other Unix-style boot processes, from which it derives. Although the Linux booting process depends very much on the computer architecture, those architectures share similar stages and software components, including system startup, bootloader execution, loading and startup of a Linux kernel image, and execution of various startup scripts and daemons. Those are grouped into 4 steps: system startup, bootloader stage, kernel stage, and init process. When a Linux system is powered up or reset, its processor will execute a specific firmware/program for system initialization, such as Power-on self-test, invoking the reset vector to start a program at a known address in flash/ROM, then load the bootloader into RAM for later execution. In personal computer (PC), not only limited to Linux-distro PC, this firmware/program is called BIOS, which is stored in the mainboard. In embedded Linux system, this firmware/program is called boot ROM. After being loaded into RAM, bootloader will execute to load the second-stage bootloader. The second-stage bootloader will load the kernel image into memory, decompress and initialize it then pass control to this kernel image. Second-stage bootloader also performs several operation on the system such as system hardware check, mounting the root device, loading the necessary kernel modules, etc. Finally, the very first user-space process starts, and other high-level system initializations are performed.

<span class="mw-page-title-main">SliTaz</span> Linux distribution

SliTaz GNU/Linux is a lightweight Linux distribution, community-based, suitable for use on older hardware and as a Live CD or Live USB. SliTaz stands for "Simple, Light, Incredible, Temporary Autonomous Zone" according to the boot screen.

<span class="mw-page-title-main">EasyBCD</span> Software for Microsoft Windows

EasyBCD is a program developed by NeoSmart Technologies to configure and tweak the Boot Configuration Data (BCD), a boot database first introduced in Windows Vista and used in all subsequent Windows releases. EasyBCD can be used to set up multi-boot environments for computers on which some versions of Windows, Linux, BSD and Mac OS X can be simultaneously installed; EasyBCD can also be used for adding entries to bootable tools and utilities, as well as modifying and controlling the behavior of the Windows boot menu. EasyBCD 2.3 introduced additional support for creating and managing entries for UEFI-based Windows entries in the boot menu. As of June 20, 2011 with the release of EasyBCD 2.1, it is no longer free for use in commercial environments which require the purchase of a paid license, however it remains free for home and non-profit use without limitations.

gPXE is an open-source Preboot eXecution Environment (PXE) client firmware implementation and bootloader derived from Etherboot. It can be used to enable computers without built-in PXE support to boot from the network, or to extend an existing client PXE implementation with support for additional protocols. While standard PXE clients use TFTP to transfer data, gPXE client firmware adds the ability to retrieve data through other protocols like HTTP, iSCSI and ATA over Ethernet (AoE), and can work with Wi-Fi rather than requiring a wired connection.

libguestfs is a C library and a set of tools for accessing and modifying virtual disk images used in platform virtualization. The tools can be used for viewing and editing virtual machines (VMs) managed by libvirt and files inside VMs, scripting changes to VMs, creating VMs, and much else besides. It was created because of security issues, when virtual disk images are mounted directly on the host system.

<span class="mw-page-title-main">SeaBIOS</span> Open-source implementation of x86 BIOS

SeaBIOS is an open-source implementation of an x86 BIOS, serving as a freely available firmware for x86 systems. Aiming for compatibility, it supports standard BIOS features and calling interfaces that are implemented by a typical proprietary x86 BIOS. SeaBIOS can either run on bare hardware as a coreboot payload, or can be used directly in emulators such as QEMU and Bochs.

<span class="mw-page-title-main">Rufus (software)</span> USB drive software

Rufus is a free and open-source portable application for Microsoft Windows that can be used to format and create bootable USB flash drives or Live USBs.

References

  1. 1 2 Negus 2006, p. 133.
  2. Pakrashi 2009, pp. 66, 71−73.
  3. "syslinux/doc/isolinux.txt". 2011-05-04. Retrieved 2019-02-23.
  4. Bresnahan & Blum 2019, pp. 136–137.
  5. "syslinux/doc/pxelinux.txt". 2014-02-01. Retrieved 2019-02-23.
  6. Matt Fleming (2012-12-06). "Syslinux 5.00 released". Syslinux mailing list. Retrieved 2019-02-23.
  7. Hardware Detection Tool on SourceForge

Sources