doc:grub

Это старая версия документа.


GNU GRUB (GRand Unified Bootloader) программа-загрузчик операционной системы. В Ubuntu используется по умолчанию.

GRUB может загрузить практически любую ОС, имеющуюся на вашем компьютере, а также в сети и, при некоторых ухищрениях, на CD/DVD (даже если этого не поддерживает BIOS вашего комьютера в виду его почтенного возраста).

GRUB также поддерживает множество файловых систем: BSD FFS, DOS FAT16 и FAT32, Minix, ext2, ext3, ReiserFS, JFS, XFS, VSTa.

/boot/grub/menu.lst

/boot/grub/menu.lst файл конфигурации GRUB в Ubuntu.

В файле описываются пункты загрузучного меню. Каждый пункт начинается ключевым словом title, текст содержащийся после него на той же строке и является названием пункта меню. На следующих строках следует описание действий, выполняемых загрузчиком при выборе соответствующего пункта.

default 0
определяет какой блок title будет загружаться по истечению времени timeout если не нажимать никаких клавиш. Блоки title нумеруются по порядку начиная с 0 (нуля).

timeout 10
время для выбора режима загрузки (в секундах).Если пользователь ничего не трогает, по истечении тайм-аута выбирается метка, указанная в поле default.

Блок, вроде такого, отвечает за загрузку Windows:

title Microsoft Windows XP название пункта меню
rootnoverify (hd0,0) определение раздела с ОС
makeactive придание разделу статуса активного
chainloader +1 передача загрузки NTLDR

Linux загружается примерно так:

title Ubuntu 7.10 kernel 2.6.22 название пункта меню
root (hd0,1) определение раздела с ОС
kernel /vmlinuz root=/dev/hda2 передача загрузки ядру, возможно, вместе с дополнительными параметрами

Самая ответственная операция, как вы, наверное, догадались — правильно указать корневой диск и раздел, с которых продолжится загрузка системы.

Жёсткие диски и разделы на них GRUB именует по-своему, в виде (hdномер_диска,номер_раздела), причём нумеровать начинает с нуля. Тут важно знать вот что: (hdX,Y) — означает Y+1-ый раздел на X+1-ом диске. То есть (hd1,0) — это первый раздел второго диска в вашем компьютере (в нотации GRUB (да и Linux) диски и разделы нумеруются с нуля, только и всего). Тем, кто привык к буквенным обозначениям в Windows, без них будет тяжеловато, но дистанцироваться от них следует хотя бы потому, что они непостоянны и могут изменяться (в результате чего, возникают известные проблемы). Диски нумеруются в соответствии с подключением, разделы — в соответствии с порядком следования на диске. Как правило, (hd0,0) — это первый раздел master-диска подключенного к основному (primary) IDE-контроллеру либо к нулевому SATA порту.

Есть у GRUB и командный режим (попасть в него можно, остановив загрузку клавишей «Esc» и нажав «c»). Набрав в командном режиме help, вы получите список всех доступных команд.

help имя_команды  

поможет получить краткую справку по соответствующей команде GRUB.

Если загрузиться вдруг не получается, то вы всегда можете перевести GRUB в режим редактирвоания нажатием клавиши «e», после этого вы вручную сможете отредактировать параметры загрузки.

Кроме того, для конфигурирования GRUB есть как минимум две GUI-утилиты для редактирвоания файла menu.lst. Из исходников (не бойтесь, в данном случае это действительно просто) можно установить GRUBed, а в репозитариях есть StartUp-Manager.

C помощью GRUB и Gfxboot можно организовать и графическое загрузочное меню. Сделать это не сложно, к тому же существует много готовых тем.

Похожие программы

LILO (LInux LOader)
Das U-Boot

Ссылки

Как восстановить GRUB после переустановки Windows

официальное руководство (на английском)

русское FAQ, где затронуты вопросы загрузки с CD/DVD и паролирования определенных пунктов (MD5-хеши хранятся прямо в конфигурационном файле);

Самодостаточный GRUB - статья , описывающая способы содержания на одном диске нескольких ОС.