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


GNU GRUB (GRand Unified Bootloader) — это программа-загрузчик операционных систем. В Ubuntu до версии 9.04 использовалась по умолчанию первая версия этого загрузчика, которая теперь называется GRUB Legacy. В более поздних версиях используется GRUB2, который теперь называется просто GRUB.

Не перепутайте GRUB версии 1, известный теперь как GRUB Legacy и использовавшийся в Ubuntu до версии 9.04 включительно, и GRUB версии 2, который подразумевается сейчас под словом GRUB и используется в Ubuntu начиная с версии 9.10. Несмотря на то, что это фактически две версии одного приложения с названием GRUB, они не имеют ничего общего и являются совершенно разными программами.

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

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

На данный момент разработка GRUB Legacy (GRUB первой версии) остановлена в пользу развития более совершенного и мощного загрузчика GRUB2, который является загрузчиком по умолчанию в версиях Ubuntu начиная с 9.10 «Karmic Koala».

Настройки

FIXME - таки надо чуть поподробней расписать

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

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

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

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

# Блок, вроде такого, отвечает за загрузку Windows:
# название пункта меню
title Microsoft Windows XP
# определение раздела с ОС
rootnoverify (hd0,0)
# придание разделу статуса активного
makeactive
# передача загрузки [[http://ru.wikipedia.org/wiki/NTLDR| NTLDR]]
chainloader +1

# 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. Mark text as key press Если загрузиться вдруг не получается, то вы всегда можете перевести GRUB в режим редактирвоания нажатием клавиши E, после этого вы вручную сможете отредактировать параметры загрузки.

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

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

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

LILO (LInux LOader) - программа, предназначенная для загрузки Linux и других операционных систем.
Das U-Boot (Universal bootloader) — компьютерный загрузчик операционных систем, ориентированный на встроенные устройства архитектур MIPS, PowerPC, ARM и множества других.

Ссылки