Приветствую тебя о линуксоид. Я надеюсь ты примерно догадываешься для чего может понадобиться LILO =] .Но давай определимся для начала в чем
отличии между LILO и /sbin/lilo.

LILO — это прога , записанная в бут секторе твоего харда , которая загружает твои ОС и запускает их на выполнение. Прога /sbin/lilo представляет собой утилиту , которая анализирует /etc/lilo.conf , именно она устанавливает загрузчик в бут сектор и создает map-файл , содержащий необходимую инфу для загрузчика.

Теперь намного расслабься , выпей пиффка , ведь дальше самое интересное , редактирование файла /etc/lilo.conf .

Этот файл делится на два раздела . Один из них — раздел глобальных ключевых слов. Вот несколько из них :

backup=filename  при выполнении lilo резервная копия сохраняется в filename .
boot=boot_dev  позволяет задать раздел, в который lilo запишет код загрузчика .
compact  требует выполнить оптимизацию , уменьшающую время загрузки.
default=name  загружаемая ОС по умолчанию.
delay=n  принуждает загрузчик ожидать n/10сек .
ignore-table  позволяет LILO забить на поврежденную таблицу разделов.
install=boot_sector  файл, используемый в качестве нового загрузочного сектора, умолчание /boot/boot.b 
map=filename  использование данного файла как map-файла, умолчание /boot/map
message=filename  содержание этого файла будет показано перед приглашением загрузки системы.
verbose=level значение level определяется сколько инфы ты увидишь при загрузке системы, чем больше число , тем больше инфы, допустимы так же и отрицательные значения.

Второй раздел этого файла — это раздел ключевых слов образов
LILO.

alias= name  задаёт второе имя для текущего образа.
failback=command_line  если текущий образ выполняется и происходит сбой , то данная командная стока передается LILO при след. загрузке.
label=name  присваиваем имя текущему образу.
password=pass  запрос пароля перед загрузкой текущего образа.
single-key  выбираем образ одной клавишей.
read-only  во время загрузки корневая файловая система будет смонтирована только для чтения, для проверки прогой fsck и последующим remount’ом
read-write  корневая файловая система монтируется для чтения и записи.
root=устройство  задает устройство , содержащее корневую файловую систему.

Все тоже самое ты можешь сделать в командной строке, с помощью lilo. Вот опции командной строки и соответствующее слово в файле lilo.conf 

-b устройство_загрузки boot=boot_dev
-c compact
-d n delay=n
-D name default=name
-i загруз.сектор install=boot_sector
-m filename map=filename
-P ignore ignore-table
-s filename backup=filename
-v verbose=level

 

Теперь еще немного дополнительных опций для того же map-инсталлятора:

-C filename использует filename вместо /etc/lilo.conf
-r каталог устанавливает указанный каталог вместо /root , с помощью chroot
-t режим тестирования
-u [устройство] восстанавливает загрузочный сектор с указанного устройства.

Вот теперь ты уже немного знаком с LILO , пора выпить еще пива , и я покажу тебе конкретный пример. Допустим, нужно загрузить несколько ОС’ей с помощью LILO. На первом разделе (/dev/hda1) установлен небезызвестный выньдовс , второй раздел содержит SlackWare(/dev/hda5) и наконец на третьем стоит RedHat(/dev/hda6). Итак , приступаем 

/etc/lilo.conf
—————————————
#Общий раздел 
boot=/dev/hda
compact 
install=/boot/boot.b
message=/etc/lilo.msg
verbose=2
promt
timeout=100

#Загружаем Слаку с ядром 2.2.5 с раздела /dev/hda5
#При загрузке требуется ввести пасс.
Image = /boot/vmlinuz-2.2.5
label=SlackWare
alias=1
single-key
root=/dev/hda5
read-only
password=n0t4LaMerZz
initrd = /boot/initrd.gz

#Загружаем винду с раздела /dev/hda1
other = /dev/hda1
label=MustDie
alias=2
single-key
table=/dev/hda

#Загружаем RedHat с раздела /dev/hda6
other = /dev/hda7
label=RedHat
alias=3
single-key
table=/dev/hda
#EOF
—————————————

Теперь посмотрим на этот файл более детально. Сначала идет глобальный раздел, и как видно из опции boot загрузчик будет установлен вместо главной загрузочной записи диска (MBR). Далее мы оптимизируем процесс загрузки опцией compact. Затем мы задаем файл , который будет использоваться в качестве загрузочного сектора . Далее идет опция задающее сообщение выдаваемое при загрузке и берется из /etc/lilo.msg . Вот этот файл:

^L

——| cH00se tHe OS To rUn |——
1. SlackWare Linux
2. Windows aka MustDie
3. RedHat Linux
———| hAVe a NicE dAy |———

Этот файл начинается с символа очистки экрана . Его можно получить в vi с помощью комбинации Ctrl+V
Ctrl+L.

Следующая опция в нашем файле говорит об уровне детализации сообщений. Следующие два ключевых слова желательно всегда включать в lilo.conf , это promt и
timeout.

Перейдем к определению образов , в нашем файле все начинается с определения образа ядра Linux, использующего файл ядра /boot/vmlinuz-2.2.5. С помощью ключевых слов label и alias для этого образа заданы имена SlackWare и 1 (теперь при загрузке системы тебе не обязательно писать slackware , ты должен просто жать
1. Ключевое слово root указывает, что корневой файловой системой для этого ядра , используется устройство /dev/hda5. При загрузке файловая система будет сначала смонтирована только для чтения , а чтобы система начала загрузку требуется ввести пароль. Следующий образ юзаем для загрузки винды. Нетрудно догадаться что эту систему мы считаем посторонней т.к. используем слово
other , которым указываем где искать эту Ось. Словом table мы определяем необходимую инфу таблицы разделов. Думаю, дальше сам разберешься =]

После этого сохраняй /etc/lilo.conf /и etc/lilo.msg, теперь пиши в консоле lilo и перегружай систему.

Наслаждайся!

P.S. Не забудь маленькую деталь, если собираешься юзать пасс, то укажи соответствующие права на файл /etc/lilo.conf , а то твой пасс лежит в незашифрованном виде.

Оставить мнение

Check Also

Windows 10 против шифровальщиков. Как устроена защита в обновленной Windows 10

Этой осенью Windows 10 обновилась до версии 1709 с кодовым названием Fall Creators Update …