Это старая версия документа.
Содержание
GNU GRUB Legacy (GRand Unified Bootloader) — это первая версия программы-загрузчика операционных систем GRUB. В Ubuntu до версии 9.04 использовалась по умолчанию именно эта первая версия GRUB, которая теперь называется GRUB Legacy. В более поздних версиях используется GRUB 2, который теперь подразумевается под просто GRUB.
Основные сведения
- Умеет по цепочке передать управление другому загрузчику, допустим NTLDR для загрузки Windows. После настройки GRUB, пользователь, при включении компьютера, видит список операционных систем, которые установлены на его компьютер, и которые можно загрузить, нажав Enter. GRUB позволяет установить несколько ОС на один компьютер в разные разделы, загружать разные ядра, передавать параметры ядру.
- GRUB — самый популярный загрузчик в мире Linux, так как является загрузчиком по-умолчанию в большинстве известных дистрибутивов. Ранее самым популярным был Lilo.
Основные возможности GRUB Legacy
- Загрузка Linux, OpenSolaris, *BSD ядер;
- Передача управления другим загрузчикам, возможность загрузки Windows-систем;
- Защита паролем пунктов меню;
- Интерактивная командная строка загрузки;
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».
Настройки
GUI для настройки GRUB
sudo apt-get install startupmanager
Система → Администрирование → StartUp-Manager
- таки надо чуть поподробней расписать
/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 можно организовать и графическое загрузочное меню. Сделать это не сложно, к тому же существует много готовых тем.
Конфигурирование GRUB вручную
sudo gedit /boot/grub/menu.lst
Вместо gedit используйте ваш любимый текстовый редактор. Доступны следующие настройки:
Пункт по умолчанию
default 0
Пункты нумеруются с нуля. Вы можете использовать по умолчанию последний выбранный вариант:
default saved
Но при этом среди директив загрузки системы должно быть savedefault.
Таймаут выбора
timeout 10
Скрыть меню
hiddenmenu
Меню будет показано только по нажатию Esc.
Пароль
password topsecret password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
Пароль будет необходим для доступа в командную строку GRUB, редактирования записей и загрузки тех систем, среди директив которых есть команда lock.
Записи для различных ОС
В конце конфигурационного файла указывается несколько секций операционных систем. Каждая из них начинается с директивы title, после которой указан текст для меню.
Windows
title Windows rootnoverify (hd0,1) makeactive chainloader +1
Linux
title Ubuntu Intrepid root (hd0,2) kernel /boot/vmlinuz-2.6.27-14-generic root=UUID=4a13e968-c692-465f-bf7a-d1cc1939879c ro quiet splash initrd /boot/initrd.img-2.6.27-14-generic boot
Нумерация разделов
(hdx,y) – обозначение раздела жесткого диска. x – номер физического диска, y – номер раздела, оба нумеруются с нуля.
Похожие программы
LILO (LInux LOader) - программа, предназначенная для загрузки Linux и других операционных систем.
Das U-Boot (Universal bootloader) — компьютерный загрузчик операционных систем, ориентированный на встроенные устройства архитектур MIPS, PowerPC, ARM и множества других.
Ссылки
- Русское FAQ, где затронуты вопросы загрузки с CD/DVD и паролирования определенных пунктов
- Самодостаточный GRUB - статья , описывающая способы содержания на одном диске нескольких ОС.