GRUB2 — Быстрый старт
Эта статья описывает, как установить и запустить GRUB в простейшей конфигурации. Для перехода с GRUB Legacy на GRUB2 смотрите Миграция на GRUB2 .
Установка GRUB
Для установки GRUB, сначала задайте для переменной
GRUB_PLATFORMS
одно или более значение в системном
make.conf
. Если не определять переменную, то GRUB сам определит, какая платформа установлена в системе. Он определит
pc
(для MBR стиля установки) для архитектур
x86
/
amd64
.
Поддержка стандартного ПК (BIOS):
/etc/portage/make.conf
Пример GRUB_PLATFORMS для ПК с BIOS
GRUB_PLATFORMS="pc"
UEFI на amd64:
/etc/portage/make.conf
Пример GRUB_PLATFORMS для ПК с 64–битным UEFI
GRUB_PLATFORMS="efi-64"
Поддержка и BIOS, и UEFI:
/etc/portage/make.conf
Пример GRUB_PLATFORMS с несколькими вариантами
GRUB_PLATFORMS="efi-64 pc"
После настройки переменной, установите ПО:
root
#
emerge --ask sys-boot/grub
Активация загрузчика GRUB
Если применимо, смонтируйте /boot :
root
#
mount /boot
Если используется EFI платформа, убедитесь, что системный раздел EFI доступен в (смонтирован) в /boot/efi . Этого можно добиться либо с помощью специального раздела ( /boot/efi отформатированного в FAT), либо раздел /boot должен быть полностью отформатирован в файловую систему FAT. Это преобразует /boot в большой системный раздел EFI
Предполагая, что только /boot/efi форматирован в FAT:
root
#
mount /boot/efi
Запустите утилиту grub-install для копирования нужных файлов в /boot/grub . На платформе PC данная утилита также записывает начальный загрузчик в главную загрузочную область (MBR) или загрузочный сектор раздела.
Для установки GRUB в MBR:
root
#
grub-install /dev/sda
Installation finished. No error reported.
Для установки GRUB на EFI–совместимую систему:
root
#
grub-install --target=x86_64-efi
Installation finished. No error reported.
Утилита
grub-install
может принимать параметр
--target
для определения ЦПУ/платформы, на которую, grub2 устанавливается. Если данный параметр не задан, то
grub-install
сам попытается определить параметр. На
x86
/
amd64
будет использован параметр
i386-pc
по умолчанию.
Автоматическая настройка
GRUB настраивается при помощи утилиты grub-mkconfig , которая создаёт конфигурационный файл.
grub-mkconfig создаёт конфигурационный файл основываясь на шаблонах расположенных в /etc/grub.d . Стандартных шаблонов, в основном, должно хватить для большинства схем загрузок.
user
$
ls /etc/grub.d
00_header 10_linux 20_linux_xen 30_os-prober 40_custom 41_custom README
Поведение данных шаблонов можно контролировать заданием переменных в /etc/default/grub . Смотрите GRUB manual для более подробной информации по настройке GRUB2.
Схема именования ядер
Чтобы grub-mkconfig определила доступные ядра, их имена должны начинаться с vmlinuz- или kernel- .
Например:
/boot/vmlinuz-3.4.3
/boot/kernel-2.6.39-gentoo
/boot/kernel-genkernel-x86_64-3.17.1-gentoo-r1
Если используется initramfs , то название файла должно начинаться с initramfs- или initrd- . Версия должна совпадать с версией образа ядра. Файлы, созданные с помощью genkernel , также будут найдены.
Например:
/boot/initrd.img-3.4.3
/boot/initrd-3.4.3.img
/boot/initrd-3.4.3.gz
/boot/initrd-3.4.3
/boot/initramfs-3.4.3.img
/boot/initramfs-genkernel-3.4.3-gentoo
/boot/initramfs-genkernel-x86_64-2.6.39-gentoo
Для создания файла grub.cfg выполните команду grub-mkconfig :
root
#
grub-mkconfig -o /boot/grub/grub.cfg
Generating grub.cfg ... Found linux image: /boot/vmlinuz-3.2.9 done
Тихая загрузка ядра
Для загрузки ядра без вывода на экран системных сообщений отредактируйте файл
/etc/default/grub
, добавив
quiet
в переменную
GRUB_CMDLINE_LINUX_DEFAULT
.
/etc/default/grub
Пример параметров тихой загрузки
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
systemd
Для загрузки systemd при использовании GRUB настройте переменную GRUB_CMDLINE_LINUX таким образом:
Это больше не является необходимым для sys-apps/systemd , если включён USE–флаг
sysv-utils
. Он активен по умолчанию в Gentoo, начиная с версии 239.
/etc/default/grub
Systemd пример
GRUB_CMDLINE_LINUX="init=/usr/lib/systemd/systemd"
Загрузка других операционных систем
Утилита grub-mkconfig может также создать конфигурации для загрузки "других" операционных систем. Однако, для это потребуется пакета sys-boot/os-prober .
Для загрузки Windows также должен быть установлен пакет sys-fs/ntfs3g . Это позволит утилите grub-mkconfig исследовать NTFS файловые системы.
Ручная настройка
Использование grub-mkconfig не является обязательным. Файл конфигурации grub.cfg также можно отредактировать вручную.
Переход от формата конфигурации GRUB Legacy к формату конфигурации GRUB 2 обычно довольно прост и требует внесения всего нескольких мелких синтаксических изменений.
|
ФАЙЛ
grub.conf
GRUB Legacy
timeout 5
'''<span style="color:maroon">title</span>''' Gentoo Linux 3.2.12
root '''<span style="color:maroon">(</span>'''hd0,'''<span style="color:maroon">0)</span>'''
'''<span style="color:maroon">kernel</span>''' /boot/kernel-3.2.12-gentoo root=/dev/sda3
<br>
|
⇨ |
ФАЙЛ
grub.conf
GRUB
timeout'''<span style="color:green">=</span>'''5
'''<span style="color:green">menuentry '</span>'''Gentoo Linux 3.2.12'''<span style="color:green">' {</span>'''
root'''<span style="color:green">=</span>'''hd0,'''<span style="color:green">1</span>'''
'''<span style="color:green">linux</span>''' /boot/kernel-3.2.12-gentoo root=/dev/sda3
'''<span style="color:green">}</span>'''
|
GRUB Legacy нумерует разделы, начиная с 0; GRUB нумерует разделы, начиная с 1. Оба загрузчика нумеруют диски, начиная с 0.
Смотрите также
- GRUB — Подробная статья о GRUB, которая содержит больше информации и обширный список дополнительных ресурсов.