Что такое lilo linux

Использование LILO

Д.Колисниченко

LInux LOader (LILO) — программа, предназначенная для загрузки Linux и других операционных систем.

Существуют другие загрузчики, например bootlin, bootact, bootstar, но они постепенно вытесняются LILO.
Помимо LILO Linux еще можно загрузить с помощью loadlin, GRUB (загрузчик в Linux Mandrake) или NTLoader.
Подробнее об использовании NTLoader и программы loadlin можно прочитать в моей статье «Многоосность»

LILO состоит из трех частей:

  1. программа записи начального загрузчика lilo
  2. программа конфигурации liloconf
  3. файл конфигурации /etc/lilo.conf

Liloconf создает файл /etc/lilo.conf, который используется программой lilo для записи начального загрузчика.

Обычно LILO помещают в MBR (Master Boot Record). Но иногда LILO устанавливают на первый сектор того раздела, где установлен Linux. Второй способ обычно используется, если нужно обеспечить загрузку Linux:

  1. с помощью другого загрузчика, например NTLoader
  2. на старых машинах без поддержки LBA

При загрузке компьютера LILO выдает подсказку
LILO
или
LILO boot:
После чего нужно ввести метку той операционной системы, которую нужно загрузить. Для загрузки Linux обычно следует ввести linux. Для просмотра всех доступных меток, нажмите Tab. Современные версии LILO обычно имеют удобное меню. Выбор меток осуществляется с помощью стрелок.

Иногда на экран только выдается подсказка
LILO
Чтобы выбрать ядро нужно нажать клавишу Shift, после чего появиться подсказка
LILO boot:
и только теперь можно нажать Tab. Если вы введете команду help, то получите список всех команд LILO.
Примечание: поведение LILO зависит от его настройки в файле /etc/lilo.conf.

При запуске Linux можно передать ядру дополнительные параметры, например mem=1024M — устанавливает объем ОЗУ равным 1024MB. Можно сформировать строку параметров и записать ее в lilo.conf — эта строка будет передана ядру при загрузке Linux.

С помощью LILO можно организовать загрузку других операционных систем (Windows, FreeBSD. ) и загрузку разных версий ядра одной ОС (имеется в виду Linux).

Пример конфигурационного файла /etc/lilo.conf
Операционная система: Linux Mandrake 7.2
LILO version: 21.5

Для того, чтобы изменения вступили в силу (если вы изменили файл конфигурации), нужно выполнить команду lilo

Другие возможности настройки LILO

disk=параметры Определяет нестандартные параметры для заданного диска
disktab=файл_таблицы Задает имя таблицы параметров диска. По умолчанию /etc/disktab. Использовать не рекомендуется
ignore-table Игнорирование ошибочных таблиц разделов
nowarn Запрещает сообщения о возможных неприятностях
serial=параметры Разрешает управление с последовательной линии. Загрузчик берет ввод из заданного последовательного порта и из клавиатуры. break по последовательной линии аналогична shift на клавиатуре.
Параметры:

[,bps[parity[bits]]]
port = 0..3 соответствует /dev/ttyS0 — /dev/ttyS3. Могут быть задействованы все 4 порта.
bps: скорость порта в бодах. По умолчанию 2400
Поддерживаются значения: 110, 150, 300, 600, 1200, 2400, 4800, 9600
parity: контроль по четности. n — без четности, e= — по четности, o — по нечетности
bits: число битов в символе — 7 или 8. По умолчанию 8, если нет контроля четности
Параметры по умолчанию
0,2400n8

Параметры append, ramdisk, read-only, read-write, root, vga могут быть заданы в разделе глобальный параметров.

Они будут использованы если они не заданы в конфигурационных секциях.

Параметры командной строки

Здесь описаны самые используемые параметры lilo. Для более подробного описания, введите man lilo

Источник

LILO (Русский)

Загрузчик LILO (анг. LInux LOader) — устаревший мульти-загрузчик для Linux-подобных систем. Несмотря на то, что он являлся стандартом в течение многих лет, постепенно его использование сошло на нет. На данный момент активная разработка LILO прекращена.

Contents

Установка

LILO доступен в пакетах lilo AUR и lilo-git AUR (разрабатываемая версия). LILO работает только на BIOS-системах.

Для установки LILO в MBR, запустите команду lilo (как root).

Перед тем, как запускать установку LILO, не забудьте отредактировать /etc/lilo.conf . Убедитесь, что в параметре root= правильно указан HDD с root-разделом. Например, если root’овый раздел находится на /dev/sda1, тогда в файле конфигурации LILO должно быть указано: root=/dev/sda1 . Не забудьте сменить root-параметр для обеих записей ‘arch’ и ‘arch-fallback’.

Настройка

LILO можно конфигурировать путем редактирования файла /etc/lilo.conf и последующего запуска команды lilo для применения изменений.

Напоминаем, что необходимо запускать LILO после каждого обновления ядра, иначе можно получить незагружаемую систему при следующем включении компьютера.

Больше информации по настройке LILO можно найти на сайте LILO-mini-HOWTO.

Пример настройки

Типичная конфигурация LILO:

Для определения возможных VGA-режимов, запустите hwinfo —framebuffer .

Установка фонового изображения

Изначально, подготовим фоновую картинку:

  • Откройте необходимый файл в GIMP’е.
  • Сожмите её до размеров 640×480.
  • Переведите изображение в индексированный режим (Изображение > Режим > Индексированный).
  • Выберите «Создать оптимальную палитру» (Create optimal palette) и установите 16-цветовой режим. Используйте наиболее подходящий для Вас метод подмешивания шума (dithering method).
  • Откройте диалог «Цветовая карта» (Индексированная палитра). Выберите, какие цвета Вы будете использовать в дальнейшем для отображения пунктов, часов и т.д. В файле lilo.conf необходимо ссылаться на цвета по индексу.
  • Экспортируйте изображение в формате *.bmp в папку /boot . В диалоге экспорта установите параметр «Не сохранять данные о цветовом пространстве».

Теперь приступим к редактированию файла lilo.conf . Ниже перечислены некоторые параметры, которыми можно настроить графическое меню. За дополнительной информацией обращайтесь в man lilo.conf .

  • bitmap= Пропишите здесь имя файла, который Вы подготовили (см. выше).
  • bmp-colors= , , , , ,

Данный параметр задает цвета в меню. Каждый параметр влияет на свой объект: передний план (foreground), фон (background) и тени текста (shadow) соответственно. Остальные 3 параметра означают то же самое, но для выделенного текста. При перечислении не используйте пробелы. Значения параметров — индексы палитры, которые были определены на предыдущем шаге. Если Вы не выбрали цвет, то можно оставить пустое значение (но не забудьте запятую). По умолчанию, фон прозрачный, и тени отсутствуют.

  • bmp-table= , , , , , В данном параметре указывается место, где будет расположено меню. X и Y — числовые координаты, также можно указывать единицу измерения (англ. p) для использования пиксельных координат.
  • bmp-timer= , , , , В данном параметре описывается местоположение и цвет таймера, который отсчитывает время до загрузки выбранного по умолчанию пункта. Как и в предыдущем случае, цвета — индексы палитры, X и Y — координаты.

Сохраните файл lilo.conf , после чего запустите lilo от root’а, перезагрузитесь и наслаждайтесь красотой!

Хук Pacman

Нужно запускать lilo после каждого обновления ядра. Можно использовать хук pacman для автоматизации.

Создайте каталог /etc/pacman.d/hooks если он ещё не существует.

Решение проблем

Ошибка чтения-записи во время загрузки (Read write error)

Эта проблема была вызвана изменением в mkinitcpio, что было реакцией на это изменение в systemd. Причина — двойная проверка fsck’ом разделов при монтировании в режиме «только чтение» (read only). Для исправления ошибки отредактируйте /etc/lilo.conf и замените ‘read only’ на ‘read write’ для обеих arch-записей.

Не найден Devmapper после обновления ядра

Вполне возможно, что после обновления ядра проявится данная ошибка. Для решения, после обновления ядра запустите modprobe dm-mod , и далее, как обычно, lilo .

Источник

Что такое lilo linux

/sbin/lilo — установить загрузчик

Часто используемые функции (более подробно см. ниже):

/sbin/lilo -q — запрос списка ядер операционных систем
/sbin/lilo -T — вывод подробной системной информации по интересующей теме
/sbin/lilo -R — для следующей загрузки системы одноразово установить, используемую по умолчанию строчку команды
/sbin/lilo -A — сделать активным или показать активный раздел диска
/sbin/lilo -E — редактировать заголовок или обновить растровый (bitmap) файл
/sbin/lilo -M — установить Главную Загрузочную Запись (MBR) на диск
/sbin/lilo -I — запросить название пути текущего ядра
/sbin/lilo <-u|-U>— убрать загрузчик LILO из MBR и восстановить прежний загрузчик

ОПИСАНИЕ

lilo устанавливает загрузчик (boot-менеджер) общего назначения под названием LILO, который при последующей перезагрузке компьютера позволит загрузить из разных разделов жесткого (жестких) дисков различные операционные системы (если они имеются): Linux, BSD, Unixware, OS/2, Windows 9x/Me/NT/2000/XP, PC/MS DOS 🙂 и т.д. Обычно установка LILO осуществляется во время инсталляции ОС Linux. После следующего включения компьютера и соответственно старта LILO, классическим вариантом является появление приглашения boot: , которое ожидает, когда пользователь введёт имя загружаемого образа. Если в течении некоторого периода времени (это значение хранится в файле /etc/lilo.conf ) пользователь не отвечает, загружается образ, принятый по умолчанию (также указан в /etc/lilo.conf ). Если LILO применяется для загрузки OC Linux, можно указать одну или более опций для передачи их ядру Linux. Обычно в качестве опций указывают характеристики контроллера жесткого диска: адрес порта ввода/вывода,IRQ, DMA. Вообще команда lilo имеет огромное число опций.

ОПЦИИ

Если .тип является .dat , тогда указанный файл рассматривается как конфигурационный файл, задающий параметры растровой графики, которые трансформируются для заголовка LILO в растровый файл с тем же именем_файла . -f disk-tab Задаёт файл параметров геометрии диска. (По умолчанию это /etc/disktab .) -F Отключить проверку загрузочного сектора для некоторых файловых систем (например, swap, XFS, . ), которые могут быть повреждены установкой LILO в первый сектор раздела. Дело в том, что эти файловые системы используют первый сектор как суперблок. См. также описание опции «-P ignore», которая позволяет пропустить проверку данной таблицы разделов. -g Указывает использовать геометрический адрес в виде цилиндр/головка/сектор диска. Её применение ограничено 1023 цилиндром включительно. Эта опция оставлена для совместимости со старыми версиями LILO. -i boot-loader В качестве загрузочного сектора использовать содержимое указанного файла boot-loader . (По умолчанию это /boot/boot.b .) -I метка [i|r] Идентифицирует текущий образ ядра, заданный меткой . Метку запущенного (после загрузки системы) ядра можно найти в переменной окружения BOOT_IMAGE или в псевдо-файле `/proc/cmdline’. Команда с этой опцией выведет соответствующий полный путь и имя файла с ядром, файл раскладки (keytable) или инициализируемый в начале загрузки файл виртуального диска (ramdisk) (соответственно через опции «i», «k», «r»). Например:
# lilo -I ‘linux-up i’
/boot/vmlinuz-up
# lilo -I ‘linux-up k’
us.ktl
# lilo -I ‘linux-up r’
/boot/initrd-up.img -l Указывает использовать 24-битную логическую (линейную) адресацию секторов вместо традиционной геометрической адресации цилиндр/головка/сектор диска. -L Указывает использовать 32-битные Логические Адреса Блоков (LBA) вместо традиционных геометрических адресов в виде цилиндр/головка/сектор диска, тем самым, предоставляя доступ ко всем разделам диска с более чем 1024 цилиндрами. -m файл-карты Использовать альтернативный файл-карту , содержащий список ядер операционных систем, вместо используемого по умолчанию. -M мастер-диск [ mbr-файл ] Установить Главную Загрузочную Запись (MBR) на указанное устройство мастер-диск . В том случае, если не задан второй аргумент mbr-файл , новый MBR, по умолчанию, копируется из «mbr.b», который содержится внутри файла /sbin/lilo (версия 22.3). Основная таблица разделов на мастер-диске не изменяется. Если никакой серийный номер диска не указан, тогда создаётся произвольный номер, который и записывается в MBR. -p Требует интерактивного ввода всей паролей, которые определены как в файле конфигурации. -P Исправить ( fix ) или пропустить ( ignore ) `поврежденные’ таблицы разделов, т.е. таблицы с несоответствующими одна другой линейными адресами и адресами в виде цилиндр/головка/сектор. Вначале всегда пытайтесь выполнить -P ignore поскольку команда с опцией -P fix перезаписывает таблицу разделов, что при неблагоприятном исходе может привести к разрушению всех таблиц разделов на диске. Опция -P ignore используется также для отмены процедуры тестирования тех типов разделов, которые не допускают установку LILO в загрузочный сектор. Эта опция часто используется с опцией «-F», которая позволяет отключить проверку загрузочного сектора для некоторых файловых систем (например, swap, XFS, . ). -q Выводить список ядер операционных систем (не только Linux), которые можно загрузить во время включения компьютера. Например:
# lilo -q
linux-up *
failsafe
Windows
floppy Этот список обычно хранится в файле /boot/map , который для lilo является основным и содержит названия и расположение ядра(ер) загрузки. Эта опция выводит только список названий. Для получения более детальной информации об установленном загрузчике используйте эту опцию с опцией -v . -r корневой-каталог Выполняет команду chroot , передавая ей в качестве аргумента указанный корневой-каталог . Необходимость в этом может возникнуть при загрузке с компакт-диска или дискеты в случае восстановления операционной системы. Новый корневой-каталог должен содержать каталог /dev , а также может нуждаться в /boot каталоге. Ему также может понадобится файл /etc/lilo.conf .

Эта опция используется сценарием mkbootdisk для создания загрузочной дискеты. -R строка команды Эта опция позволяет указать определенную строку команды , которая сработает при следующем запуске загрузчика. Потом загрузчик удалит эту строку. Фактически это одноразовая команда. lilo с этой опцией обычно используется в сценариях перезагрузки системы, сразу перед вызовом `shutdown -r’. Эта опция, указанная без аргументов, отменяет строки, помеченные как lock или fallback . -s save-file Когда команда lilo перезаписывает загрузочный сектор, она сохраняет резервную копию его прежнего содержимого в файле, имя которого обычно /boot/boot.NNNN , где NNNN означает соответствующее устройство. Эта опция позволяет указать альтернативный файл для резервной копии загрузочного сектора (или, вместе с опцией -u , позволяет указать из какого файла восстановить загрузочный сектор). -S save-file Обычно команда lilo не перезаписывает существующий файл резервной копии загрузочного сектора. Эта опция позволяет перезаписать его. -t Выполняет только проверку (тест), не записывая реально вновь созданный загрузочный сектор или файл карты. Используйте совместно с опцией -v чтобы узнать, что в действительности lilo собирается сделать. -T опция Выводит системную информацию, часть которой берётся из системного BIOS. Эта возможность более удобна по сравнению с загрузкой диагностической дискеты LILO на проблемной системе. опция может принимать одно из следующих значений: -u [название-диска] Убрать загрузчик lilo из главной загрузочной записи и восстановить прежний загрузчик. С этой опцией могут использоваться опции ‘-s’ и ‘-C’. Указывать название-диска не обязательно. Дополнительно происходит проверка временной метки. -U [название-диска] Действует аналогично предыдущей опции, но не делается проверка временных меток. -v Подробно информирует о происходящем. Указание от одно до пяти опций -v увеличивает уровень информативности. Можно использовать и такой вариант: -v n (где уровень информативности n=1..5). -V Выводит информацию о номере версии программы. -w Подавляет предупреждающие сообщения. -x опция Только для установленных RAID массивов. Для опции могут быть использованы следующие ключевые слова: none , auto , mbr-only или список дополнительных устройств загрузки (без пробелов между ними), указанных через запятую. -X Зарезервировано LILO для внутреннего использования. Может приводить к различным результатам в зависимости от используемой версии LILO. Строка начинающаяся с «CFLAGS=» будет содержать опции компилирования, которые были использованы для сборки данной версии LILO. -z Когда используется совместно с опцией -M, выполняет очистку серийного номера устройства. Обычно используется при создании нового серийного номера устройства, как например:

Приведенные выше опции командной строки соответствуют следующим ключевым словам файла конфигурации, которые показаны ниже.

-b устройство_загрузки boot=устройство_загрузки
-B файл.bmp bitmap=файл.bmp
-c compact
-d dsec delay=dsec
-D метка default=метка
-i загрузчик install=загрузчик
-f файл disktab=файл
-g geometric
-l linear
-L lba32
-m файл_карты map=файл_карты
-P fix fix-table
-P ignore ignore-table
-s файл backup=файл
-S файл force-backup=файл
-v [N] verbose=N
-w nowarn
-x опция raid-extra-boot=опция

ОПЦИИ ЗАГРУЗКИ

lock Блокирует использование командной строки, аналогично директиве ‘lock’, которую можно указать в файле конфигурации ‘lilo.conf.’ mem=###[,K,M] Определяет максимальный объём оперативной памяти в системе. Объём указывается в байтах, килобайтах или мегабайтах. Эта опция не удаляется из командной строки и всегда передаётся в ядро. nobd Не производить чтение данных о параметрах из BIOS. Эта опция зарезервирована для использования с не IBM-совместимыми BIOS-ми, которые «зависают» в начале загрузки после выдачи строк:

vga=[ASK,EXT,EXTENDED,NORMAL] Позволяет переназначить (используемый по умолчанию) видео режим при загрузке ядра.

ОШИБКИ ЗАГРУЗКИ


Процесс загрузки происходит в две стадии. Начальная стадия загрузки первого сектора осуществляется или средствами BIOS, или загрузчиком, который находится в MBR. В дальнейшем программный код (содержащийся в этом секторе) уже сам выполняет загрузку ограниченного количества секторов загрузчика для второй стадии. Когда первая стадия загрузки LILO получает управление, на мониторе появляется первая буква «L». Затем он считывает сектора и настраивает их для передачи управления второй стадии загрузки. Здесь появляется буква «I». Если обнаруживается какой-нибудь сбой, например, ошибка чтения диска, будет выдан шестнадцатеричный код ошибки и предпринята попытка повторить операцию. Все шестнадцатеричные коды ошибок являются значениями, которые возвращает BIOS. Ошибки обнаруживаемые и связанные с lilo это — 40, 99 и 9A. Ниже приведена часть списка с некоторыми кодами ошибок:
00 ошибок нет
01 неверная дисковая команда
0A признак «битого» сектора
0B признак «битой» дорожки
20 ошибка контроллера устройства
40 сбой позиционирования головки диска (BIOS)
40 номер цилиндра >1023 (LILO)
99 недопустимый индексный сектора на второй стадии загрузки (LILO)
9A не обнаружена загружаемая сигнатура на второй стадии загрузки (LILO)
AA невозможно прочитать устройство
FF заданное действие завершилось с ошибкой

Ошибку с кодом 40 генерирует BIOS или LILO в процессе преобразования линейных (24-битовых) адресов дискового пространства в геометрические (C:H:S) адреса. Эта ошибка также может появится на старых системах, которые не поддерживают адресацию lba32 (32-битные адреса). Ошибки 99 и 9A обычно означают невозможность чтения файла карты (map-file, -m или map=), обычно из-за того, что LILO не был перезапущен после некоторых изменений в системе или из-за несогласованности в параметрах геометрии устройства, которые использует LILO (см. вывод команды lilo -v3) с реально установленными в BIOS (для устранения этой проблемы вам, возможно, понадобится один из дисков диагностики lilo, распространяемых с исходным кодом lilo).

Когда происходит передача управления от первой стадии загрузки второй, это сопровождается появлением на мониторе второй буквы «L». Последующая инициализация второй стадии, включая проверку «Таблицы Дескрипторов» — списка ядер или других загружаемых компонентов — сопровождается появлением завершающей буквы «O», в форме целого слова «LILO», которое состоит только из заглавных букв.

В течении всей второй стадии загрузки, сообщения об ошибках выводятся на английском языке, с помощью которых более или менее точно можно попытаться найти источник их появления.

НЕСОВМЕСТИМОСТИ

Начиная с версии 22.0, устройства RAID массивов записывают загрузочную запись в таблицу разделов RAID. Во время записи MBR может возникнуть необходимость оставить RAID загружаемым при последующем восстановлении, однако, все предпринятые по умолчанию действия могут быть изменены. В такой ситуации, для создания архива совместимого с предыдущими версиями, используйте опцию `-x mbr-only’.

ОШИБКИ


СМ. ТАКЖЕ

В целом программа lilo сопровождается очень подробной документацией. (lilo 21)

Источник

Читайте также:  Chm reader для linux
Оцените статью