LILO (Русский)
Загрузчик LILO (анг. LInux LOader) — устаревший мульти-загрузчик для Linux-подобных систем. Несмотря на то, что он являлся стандартом в течение многих лет, постепенно его использование сошло на нет. На данный момент активная разработка LILO прекращена.
Установка
LILO доступен в пакетах liloAUR и lilo-gitAUR (разрабатываемая версия). 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:
compact
в файл /etc/lilo.conf
в раздел перед указанием image, как показано в примере ниже./etc/lilo.conf
# # /etc/lilo.conf # boot=/dev/hda # This line often fixes L40 errors on bootup # disk=/dev/hda bios=0x80 default=Arch timeout=100 lba32 prompt compact image=/boot/vmlinuz-linux label=Arch append="devfs=nomount" vga=788 root=/dev/hda2 read-only image=/boot/vmlinuz-linux label=ArchRescue root=/dev/hda8 read-only other=/dev/hda1 label=Windows # End of file
Для определения возможных VGA-режимов, запустите hwinfo --framebuffer
.
Установка фонового изображения
Изначально, подготовим фоновую картинку:
- Откройте необходимый файл в GIMP'е.
- Сожмите её до размеров 640x480.
- Переведите изображение в индексированный режим (Изображение > Режим > Индексированный).
- Выберите "Создать оптимальную палитру" (Create optimal palette) и установите 16-цветовой режим. Используйте наиболее подходящий для Вас метод подмешивания шума (dithering method).
- Откройте диалог "Цветовая карта" (Индексированная палитра). Выберите, какие цвета Вы будете использовать в дальнейшем для отображения пунктов, часов и т.д. В файле
lilo.conf
необходимо ссылаться на цвета по индексу. - Экспортируйте изображение в формате *.bmp в папку
/boot
. В диалоге экспорта установите параметр «Не сохранять данные о цветовом пространстве».
Теперь приступим к редактированию файла lilo.conf
. Ниже перечислены некоторые параметры, которыми можно настроить графическое меню. За дополнительной информацией обращайтесь в man lilo.conf
.
- bitmap=<bitmap-file> Пропишите здесь имя файла, который Вы подготовили (см. выше).
- bmp-colors=<fg>,<bg>,<sh>,<hfg>,<hbg>,<hsh>
- Данный параметр задает цвета в меню. Каждый параметр влияет на свой объект: передний план (foreground), фон (background) и тени текста (shadow) соответственно. Остальные 3 параметра означают то же самое, но для выделенного текста. При перечислении не используйте пробелы. Значения параметров - индексы палитры, которые были определены на предыдущем шаге. Если Вы не выбрали цвет, то можно оставить пустое значение (но не забудьте запятую). По умолчанию, фон прозрачный, и тени отсутствуют.
- bmp-table=<x>,<y>,<ncol>,<nrow>,<xsep>,<spill> В данном параметре указывается место, где будет расположено меню. X и Y - числовые координаты, также можно указывать единицу измерения (англ. p) для использования пиксельных координат.
- bmp-timer=<x>,<y>,<fg>,<bg>,<sh> В данном параметре описывается местоположение и цвет таймера, который отсчитывает время до загрузки выбранного по умолчанию пункта. Как и в предыдущем случае, цвета - индексы палитры, X и Y - координаты.
Пример:
bitmap=/boot/arch-lilo.bmp bmp-colors=1,0,8,3,8,1 bmp-table=250p,150p,1,18 bmp-timer=250p,350p,3,8,1
Сохраните файл lilo.conf
, после чего запустите lilo
от root'а, перезагрузитесь и наслаждайтесь красотой!
Хук Pacman
Нужно запускать lilo после каждого обновления ядра. Можно использовать хук pacman для автоматизации.
Создайте каталог /etc/pacman.d/hooks
если он ещё не существует.
/etc/pacman.d/hooks/lilo.hook
[Trigger] Operation = Install Operation = Upgrade Operation = Remove Type = Package Target = linux Target = linux-lts [Action] Description= Run lilo after kernel update When = PostTransaction Depends = lilo Exec = /usr/bin/lilo
Решение проблем
Ошибка чтения-записи во время загрузки (Read write error)
Эта проблема была вызвана изменением в mkinitcpio, что было реакцией на это изменение в systemd. Причина - двойная проверка fsck'ом разделов при монтировании в режиме "только чтение" (read only). Для исправления ошибки отредактируйте /etc/lilo.conf
и замените 'read only' на 'read write' для обеих arch-записей.
Дополнительно - смотрите тему на форуме.
Не найден Devmapper после обновления ядра
Вполне возможно, что после обновления ядра проявится данная ошибка. Для решения, после обновления ядра запустите modprobe dm-mod
, и далее, как обычно, lilo
.