lwilis — Установка и конфигурирование GRUB для использования initrd
Настоящая заметка будет продолжением к посту о initrd.
Исходим из того, что файл initrd.gz у нас есть, и мы знаем, что он находится по адресу /boot/initrd.gz. Единственный жесткий диск несет один раздел /dev/sda1. На текущий момент наша система способна загружаться только с внешнего носителя, и процедура такой загрузки есть в моей предыдущей заметке. Поэтому загружаем свою систему и, первым делом, устанавливаем GRUB.
Для установки GRUB`а нам потребуется пакет grub-0.97-i486-6.tgz, найти такой пакет проще всего в каталоге extra/grub на установочном dvd-диске Slackware 12.2. Если таковой диск у нас имеется, то сейчас мы его смонтируем и установим пакет, иначе есть вариант обратиться на http://packages.slackware.it и скачать нужный пакет.
Монтирование файловой системы на диске - дело нехитрое, если знаешь как привод именуется в системе. А если не знаешь, то удобно воспользоваться инструментом dmesg, который отдаст информацию о найденном оборудовании. Информаци, скорее всего, будет больше высоты экрана, но все нам не нужно, поэтому отфильтруем ее таким способом:
И в третьей строке слово "sr0" (у вас может быть другое слово) говорит нам о том, как именуется наш привод в системе. Дальнейшие операции будем делать под учетной записью root (исхожу из того, что sudo у вас еще не настроен), так что по-больше внимания к своим действиям. Теперь монтируем диск:
По эстетическим соображениям монтировать диск лучше в /var/log/mount, но хорошо быть уверенным, что каталог существует; поэтому сначала проверяем наличие каталога (при необходимости создадим его), а потом смонтируем файловую систему на диске.
Теперь устанавливаем пакет grub-0.97-i486-6.tgz:
Теперь воспользуемся инструментом grubconfig, после запуска нас ожидает псевдо-графический интерфейс, выбираем режим "simple". Соглашаемся с умолчаниями, до вопроса в какую область записать первичный загрузчик (и выбираем MBR). Далее заполняем поле о названии нашей системы (заполняется произвольно, главное чтоб самому было понятно). На этом автоматическая конфигурация завершается. Теперь идем в каталог /boot/grub и открываем файл menu.lst в текстовом редакторе, ищем строку с названием нашей системы. Чуть ниже будет строка, начинающаяся с kernel, а следующей строкой пишем
Теперь перезагружаемся (/sbin/reboot), извлекаем диск из привода и, если все сделали правильно, - увидим меню GRUB, там выбираем нашу систему и загружаемся.
Исходим из того, что файл initrd.gz у нас есть, и мы знаем, что он находится по адресу /boot/initrd.gz. Единственный жесткий диск несет один раздел /dev/sda1. На текущий момент наша система способна загружаться только с внешнего носителя, и процедура такой загрузки есть в моей предыдущей заметке. Поэтому загружаем свою систему и, первым делом, устанавливаем GRUB.
Для установки GRUB`а нам потребуется пакет grub-0.97-i486-6.tgz, найти такой пакет проще всего в каталоге extra/grub на установочном dvd-диске Slackware 12.2. Если таковой диск у нас имеется, то сейчас мы его смонтируем и установим пакет, иначе есть вариант обратиться на http://packages.slackware.it и скачать нужный пакет.
Монтирование файловой системы на диске - дело нехитрое, если знаешь как привод именуется в системе. А если не знаешь, то удобно воспользоваться инструментом dmesg, который отдаст информацию о найденном оборудовании. Информаци, скорее всего, будет больше высоты экрана, но все нам не нужно, поэтому отфильтруем ее таким способом:
$dmesg |grep CD-ROM
, на выходе будет нечто типа:
1 2 3 |
[17234.262970] scsi 3:0:0:0: CD-ROM HL-DT-ST DVDRAM GSA-E10L LE06 PQ: 0 ANSI: 0 [17234.284797] Uniform CD-ROM driver Revision: 3.20 [17234.285005] sr 3:0:0:0: Attached scsi CD-ROM sr0 |
DIR=/var/log/mount/; [ -d "$DIR" ] || mkdir "$DIR" && mount /dev/sr0 "$DIR"
Здесь немного поясню.По эстетическим соображениям монтировать диск лучше в /var/log/mount, но хорошо быть уверенным, что каталог существует; поэтому сначала проверяем наличие каталога (при необходимости создадим его), а потом смонтируем файловую систему на диске.
Теперь устанавливаем пакет grub-0.97-i486-6.tgz:
installpkg /var/log/mount/extra/grub/grub-0.97-i486-6.tgz
В процессе установки вы увидите краткое описание о назначении пакета.Теперь воспользуемся инструментом grubconfig, после запуска нас ожидает псевдо-графический интерфейс, выбираем режим "simple". Соглашаемся с умолчаниями, до вопроса в какую область записать первичный загрузчик (и выбираем MBR). Далее заполняем поле о названии нашей системы (заполняется произвольно, главное чтоб самому было понятно). На этом автоматическая конфигурация завершается. Теперь идем в каталог /boot/grub и открываем файл menu.lst в текстовом редакторе, ищем строку с названием нашей системы. Чуть ниже будет строка, начинающаяся с kernel, а следующей строкой пишем
initrd /boot/initrd.gz
после, сохраняем файл.Теперь перезагружаемся (/sbin/reboot), извлекаем диск из привода и, если все сделали правильно, - увидим меню GRUB, там выбираем нашу систему и загружаемся.