GRUB2 — Быстрый старт
Эта статья описывает, как установить и запустить GRUB в простейшей конфигурации. Для перехода с GRUB Legacy на GRUB2 смотрите Миграция на GRUB2.
Установка GRUB
Для установки GRUB, сначала задайте для переменной GRUB_PLATFORMS одно или более значение в системном make.conf. Если не определять переменную, то GRUB сам определит, какая платформа установлена в системе. Он определит pc
(для MBR стиля установки) для архитектур x86/amd64.
Поддержка стандартного ПК (BIOS):
GRUB_PLATFORMS="pc"
UEFI на amd64:
GRUB_PLATFORMS="efi-64"
Поддержка и BIOS, и UEFI:
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.
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
systemd
Для загрузки systemd при использовании GRUB настройте переменную GRUB_CMDLINE_LINUX таким образом:
Это больше не является необходимым для sys-apps/systemd, если включён USE–флаг
sysv-utils
. Он активен по умолчанию в Gentoo, начиная с версии 239.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 обычно довольно прост и требует внесения всего нескольких мелких синтаксических изменений.
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>
|
⇨ |
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, которая содержит больше информации и обширный список дополнительных ресурсов.