Наши партнеры

UnixForum






Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Тематический каталог -> Процесс начальной загрузки системы

Ставим lilo на диск D: (E:, F: ...)

Использовать BIOS configurator в качестве мультизагрузчика особого труда не представляет, но поскольку операции с lilo достаточно рискованные, то начать следует с изготовления загрузочной дискеты (makebootdisk, далее в меню выбираем lilo boot disk и OK - так это делается в Slackware) после чего стоит проверить ее работоспособность, загрузившись с нее. Теперь можно приступать к сочинению конфигурационного файла lilo (пусть он называется /etc/lilo.conf.hdb). В качестве рыбы предлагаю такой вариант (комментарии следуют):

boot = /dev/hdb
disk=/dev/hdb
bios=0x80
lba32
image=/vmlinuz
root=/dev/hdb1
read-only

Стандартные опции - boot диск (тот на который будет установлен lilo) -/dev/hdb, ядро - /vmlinuz расположено на root-partition /dev/hdb1, стандартно смонтированной как read-only. Существенным моментом является то, что диску /dev/hdb поставлен в соответствие адрес BIOS bios=0x80. BIOS нумерует IDE диски последовательно - 0x80 -primary-master, 0x81 - primary-slave, 0x82 - secondary-master ... (для SCSI дисков аналогично, только старшие биты другие) и изменение последовательности загрузки в BIOS сводится к перестановке этих адресов. Таким образом такая конфигурация lilo устанавливает первичный загрузчик в MBR на диске /dev/hdb, однако при загрузке обращение к этому диску будет происходить по адресу 0x80, т.е. как к primary master.

Теперь осталось установить lilo -
lilo -C /etc/lilo.conf.hdb
(опция -C позволяет указывать конфигурационный файл отличный от /etc/lilo.conf) и перегрузится. Затем в BIOS выбираете последовательность загрузки - "D,A" и при благоприятном стечении обстоятельств :) через некоторое время можно будет вводить свой login и пароль.
Этот трюк с disk=... bios=... может оказаться также полезным при переносе (установке) системы с диска на диск. Скажем, у вас есть большой диск на компьютере с установленным Линуксом и вы хотите перенести систему на диск меньшего размера (поэтому низкоуровневое копирование применить не удается), который для этой цели подключен как primary slave к вашему компьютеру и смонтирован, например, в директории /mnt. В таком случае есть два варианта - последовательно копировать корневые директории cp -aP /usr ... /mnt и выдирать "лишние" файлы, либо c нуля устанавливать на него необходимые пакеты (installpkg -root /mnt aaa_base.tgz - так это делается в Slackware). После того как все файлы установлены, остается сделать этот диск загрузочным. Для этого создаете файл /mnt/etc/lilo.conf.hdb примерно такого же вида как и приведенный выше (изменить следует только строчку root=/dev/hda1, если диск будет в итоге стоять как primary-master и Линукс расположен на первой partition) и устанавливаете его

chroot /mnt
lilo -C /etc/lilo.conf.hdb

(chroot нужен для того чтобы boot-loader, boot-backup оказались в /mnt/boot, а не потерли те, что лежат у ваc в /boot). И все - выключайте компьютер и снимайте диск.
Нетрудно сообразить какую последовательность действий нужно совершить в том случае, если вы хотите проверить работоспособность вашей инсталляции Линукса без перестановки диска из компьютер в компьютер.

Автор: geekkoo

Опубликовал: San АНДРЕЕВ
Дата: 25.07.2003
постоянный адрес статьи: http://linuxportal.ru/entry.php/P33_0_3_0/