Настройка загрузчика системы

Теперь, когда вы перекомпилировали свое ядро, вы должны настроить в загрузчике системы загрузку нового ядра. Это очень важное действие. Если вы его не выполните, или выполните неправильно, вы не сможете загрузить систему. Если это всё же произойдёт, загрузите вашу систему с загрузочной дискеты, созданной ранее, и попробуйте настроить загрузчик ещё раз. Если ваша загрузочная дискета не работает, обратитесь к Главе 3 за дополнительной информацией о режиме восстановления.

Чтобы у вас был запасной вариант загрузки, в случае возможных ошибок нового ядра, следует сохранить старое ядро. Во время установки Red Hat Linux 7.2, вы выбрали загрузчик системы (LILO или GRUB). Обратитесь к разделу, посвященному вашему загрузчику.

GRUB

Если в качестве загрузчика системы был выбран GRUB, вы должны изменить файл /boot/grub/grub.conf. Файл конфигурации GRUB по умолчанию выглядит так:

# NOTICE:  You have a /boot partition.  This means that
#          all kernel paths are relative to /boot/
default=0
timeout=30
splashimage=(hd0,0)/grub/splash.xpm.gz

title Red Hat Linux (2.4.7-3)
        root (hd0,0)
        kernel /vmlinuz-2.4.7-3 ro root=/dev/hda3
        initrd /initrd-2.4.7-3.img

Если вы создавали отдельный раздел /boot, пути к ядру и образу initrd указываются относительно раздела /boot.

Чтобы настроить в GRUB загрузку нового ядра, скопируйте существующий раздел в новый и задайте в нём загрузку образа нового ядра (и образа initrd, если у вас есть любые устройства SCSI и созданный образ initrd). Убедитесь в том, что название нового раздела отличается от названия раздела загрузки старого ядра. По умолчанию, в Red Hat Linux используется строка Red Hat Linux и версия ядра в круглых скобках, что позволяет различить в GRUB разные загружаемые ядра. В рассматриваемом примере новый файл /boot/grub/grub.conf будет выглядеть так:

# NOTICE:  You have a /boot partition.  This means that
#          all kernel paths are relative to /boot/
default=0
timeout=30
splashimage=(hd0,0)/grub/splash.xpm.gz

title Red Hat Linux (2.4.7-3-jul2001)
        root (hd0,0)
        kernel /vmlinuz-2.4.7-3-jul2001 ro root=/dev/hda3
        initrd /initrd-2.4.7-3-jul2001.img

title Red Hat Linux (2.4.7-3)
        root (hd0,0)
        kernel /vmlinuz-2.4.7-3 ro root=/dev/hda3
        initrd /initrd-2.4.7-3.img

Номер системы, загружаемой по умолчанию, равен 0. Чтобы определить по умолчанию загрузку вашего нового ядра, либо поместите описывающий его раздел файла, в начало, либо измените номер системы по умолчанию на нужный вам (помните, что номера начинаются с 0) Если вы используете GRUB, после редактирования файла конфигурации вам не нужно выполнять какие-либо команды.

Теперь, при загрузке системы вы увидите: Red Hat Linux (2.4.7-3-jul2001) и Red Hat Linux (2.4.7-3) - варианты загрузки загрузчика GRUB. Чтобы загрузить ядро по умолчанию, нажмите [Enter] или дождитесь истечения таймаута. Если вы хотите загрузить предыдущее ядро, выберите его и нажмите [Enter].

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

LILO

Чтобы настроить загрузку нового ядра в LILO, вы должны изменить файл /etc/lilo.conf и выполнить команду /sbin/lilo -v.

По умолчанию файл /etc/lilo.conf выглядит так:

boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
message=/boot/message
linear
default=linux

image=/boot/vmlinuz-2.4.7-3
	label=linux
        initrd=initrd-2.4.7-3.img
	read-only
	root=/dev/hda5

Чтобы настроить в LILO загрузку нового ядра, скопируйте существующий раздел в новый и задайте в нём загрузку образа нового ядра (и образа initrd, если у вас есть любые устройства SCSI и созданный образ initrd). Измените название метки старого ядра, например, на такое: linux-old. Изменённый файл /etc/lilo.conf будет выглядеть так:

boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
message=/boot/message
linear
default=linux
	
image=/boot/vmlinuz-2.4.7-3-jul2001
label=linux
initrd=initrd-2.4.7-3-jul2001.img
read-only
root=/dev/hda5
		
image=/boot/vmlinuz-2.4.7-3
label=linux-old
initrd=initrd-2.4.7-3.img
read-only
root=/dev/hda5

Чтобы изменения вступили в силу, выполните команду: /sbin/lilo -v. Если всё прошло хорошо, вы увидите подобные сообщения:

LILO version 21.4-4, Copyright (C) 1992-1998 Werner Almesberger
'lba32' extensions Copyright (C) 1999,2000 John Coffman

Reading boot sector from /dev/hda
Merging with /boot/boot.b
Mapping message file /boot/message
Boot image: /boot/vmlinuz-2.4.7-3
Added linux *
Boot image: /boot/vmlinuz-2.4.7-3-jul2001
Added linux-old
Writing boot sector.

Убедитесь в том, что присутствует сообщение Writing boot sector. Знак * после слова linux означает, что по умолчанию LILO будет загружать ядро, описанное в разделе linux.

Теперь, при загрузке системы вы увидите варианты загрузки загрузчика LILO: linux и linux-old.

Чтобы загрузить новое ядро (linux), просто нажмите [Enter], или дождитесь истечения таймаута LILO. Если вы хотите загрузить старое ядро (linux-old), выберите linux-old и нажмите [Enter].

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