12.9. Создание меню загрузки в GRUB

Проблема

Конечно, искать корневые устройства и ядро в командной консоли GRUB весьма увлекательно, но вы, вероятно, предпочтёте сохранить параметры загрузки в конфигурационном файле и использовать меню загрузки при запуске системы. В этом меню задаются параметры по умолчанию, а также содержится список всех установленных операционных систем.

Решение

Включите загрузочные записи в конфигурационный файл GRUB — это файл /boot/grub/menu.lst (в Red Hat используется grub.conf, который является символической ссылкой на menu.lst). Каждая загрузочная запись в GRUB называется строфой (stanza). Базовая конфигурация строфы выглядит следующим образом:

title Fedora Core
root (hd0,0)
kernel /boot/vmlinuz-2.4.22-1 root=/dev/hda1 ro
initrd /boot/initrd-2.4.22-1.img

Название (title) строфы выбирается произвольно, но его присутствие обязательно, так как оно сообщает GRUB, где начинается каждая строфа, и определяет содержимое пункта меню загрузки. Остальные строки содержат информацию, которая вводится в командной строке GRUB. В отличие от командной строки, команду boot в файле menu.lst указывать не нужно — GRUB выполнит загрузку автоматически по указанным параметрам.

В меню можно включить сколько угодно операционных систем, каждая система представляется отдельной строфой, как та, что приведена выше. Важно убедиться, что строка kernel указывает на правильный раздел и образ ядра. В одном корневом разделе может находиться несколько ядер, и разные конфигурации часто используют один и тот же загрузочный раздел (что даже рекомендуется).

Комментарий

Важно помнить, что корневое устройство, заданное строкой root (hd0,0), определяет местонахождение каталога /boot. Система нумерации дисков и разделов в GRUB отличается от привычной для Linux — первая цифра обозначает диск (hd0 — первый жёсткий диск), вторая — раздел (0 — первый раздел). В строке kernel /boot/vmlinuz-2.4.22-1 root=/dev/hda2 ro параметр root указывает на корневую файловую систему с использованием имени устройства ядра (в данном случае — второй раздел на первом жёстком диске).

См. также

The Grub Manual; info grub.