Библиотека сайта rus-linux.net
Загрузчики Linux
Оригинал: Linux BootloadersАвтор: DevynCJohnson
Дата публикации: 26 августа 2013 года
Перевод: А. Кривошей
Дата перевода: февраль 2014 г.
Linux работает с несколькими загрузчиками. Обычно администраторы Linux оставляют тот загрузчик, который по умолчанию включен в устанавливаемый дистрибутив. Иногда им требуется по каким-либо причинам использовать другой, или инсталлятор дистрибутива позволяет выбирать из нескольких загрузчиков. Поэтому данная заметка поможет вам узнать немного больше о различных загрузчиках Linux.
Загрузчик - это программа, которая запускается непосредственно после окончания стартовых тестов BIOS. Она загружает операционную систему или другой загрузчик (это называется загрузкой по цепочке). Операционная система нуждается в программе определенного типа, чтобы инициировать загрузку своего ядра. Загрузка по цепочке используется обычно в том случае, когда на компьютере установлено несколько операционных систем (мультизагрузка), а первичный загрузчик не может инициировать одну или несколько операционных систем. Например, некоторые из загрузчиков Linux не могут загружать Windows. Вместо этого такие загрузчики запускают другой загрузчик, который может работать с Windows.
LILO
LILO (LInux LOader) был стандартным загрузчиком для многих дистрибутивов Linux до тех пор, пока не стал более популярным GRUB. LILO разрабатывался и поддерживался Вернером Альмесбергером (Werner Almesberger) с 1992 по 1998 год, Джоном Коффманом (John Coffman) с 1999 по 2007 год, и Иоахимом Вьедорном (Joachim Wiedorn) с 2010 года. Проект до сих пор активен. Преимуществом LILO над многими другими загрузчиками является отсутствие требований к типу файловой системы. Это значит, что операционная система может использовать любую файловую систему (NTFS, EXT4, BTRFS, FAT32, HFS+, UFS, JFS и т.д.), и она все равно будет загружена. LILO также может загружать ядро Linux с гибких дисков и внешних жестких дисков, и способен работать с шестнадцатью установленными на компьютер операционными системами. Их количество можно увеличить, используя загрузку по цепочке. LILO может быть установлен в загрузочный сектор раздела или в Master Boot Record (MBR).
ELILO
Форк LILO, созданный для работы на компьютерах с EFI. Этот загрузчик по имени ELILO (Efi-based LInux Loader) был разработан в Hewlett Packard. Он предназначался для систем Intel Macintosh. ELILO также поддерживает сетевую загрузку по протоколам TFTP/DHCP.
GNU GRUB
Наиболее широко используемый и популярный загрузчик в мире Unix - это GNU GRUB (GNU GRand Unified Bootloader), который создан и поддерживается сообществом GNU. Он написан на ассемблере и C.
SYSLINUX
SYSLINUX - это легковесный загрузчик, созданный Питером Энвином (H. Peter Anvin). Он породил множество форков. SYSLINUX используется с файловыми системами FAT и NTFS, может работать с жесткими дисками, дискетами и USB-устройствами. Для файловой системы ISO 9660 дисков CD-ROM используется ISOLINUX. Для сетевых серверов, использующих Preboot Execution Environment (PXE), предназначен PXELINUX. Операционные системы на файловых системах EXT и BTRFS требуют EXTLINUX (он встроен в SYSLINUX 4). Для старых систем типа DOS используется MEMDISK.
PXELINUX
PXELINUX - это форк SYSLINUX. Для его использования компьютер должен иметь ROM сетевой карты, совместимый с PXE. Для активации сети TCP/IP используется BOOTP или DHCP. Затем PXELINUX скачивает загрузочный образ с помощью TFTP. Далее загружается и настраивается ядро. PXELINUX используется на бездисковых рабочих станциях или для установки Linux с сервера.
SILO
Системы Linux для SPARC загружаются с помощью SPARC Improved bootLOader (SILO), который также используется в Solaris. SILO во многом похож на LILO. Если пользователь знает и понимает, как работает LILO, то он без труда справится и с SILO. Однако есть несколько отличий. Например, SILO, в отличие от LILO, просматривает свой конфигурационный файл во время загрузки. SILO может получить доступ к файловым системам ext2/3, UFS, romfs и ISO 9660. SILO поддерживает распаковку сжатых образов vmlinux.
PALO
Системы Linux для HPPA используют PALO (PA-RISC bootLOader).
Yaboot
Системы Linux для PowerPC могут использовать Yaboot (Yet Another BOOT loader).
Das U-Boot
Некоторые встроенные системы используют Das U-Boot (Universal Bootloader) - загрузчик с окрытым исходным кодом, написанный на C. Das U-Boot работает с процессорами различной архитектуры, включая PPC, ARM, MIPS, AVR32, x86, 68k, Nios и MicroBlaze.
Barebox
Этот загрузчик с открытым исходным кодом может работать с процессорами ARM, Blackfin, MIPS, Nios и x86.
BURG
BURG (Brand-new Universal loadeR from GRUB) - это недавнее ответвление GRUB. Разработчики загрузчика планируют заменить GRUB на BURG. Он поддерживает большее количество операционных систем. Ключевой особенностью BURG является поддержка различных тем. Это загрузчик со множеством четких, хорошо прорисованных тем.