This is Gentoo's testing wiki. It is a non-operational environment and its textual content is outdated.

Please visit our production wiki at https://wiki.gentoo.org

GRUB2 - Быстрый старт

From Gentoo Wiki (test)
Jump to:navigation Jump to:search
This page is a translated version of the page GRUB2 Quick Start and the translation is 100% complete.

Эта статья описывает как установить и запустить "GRUB2" в простейшей конфигурации. Для более подробной информации смотрите GRUB2. Для перехода с GRUB Legacy на GRUB2 смотрите Миграция на GRUB2

Установка GRUB2

Пакет sys-boot/grub разделяем, это подразумевает, что и grub-0.97 и grub-2.xx могут быть установлены одновременно. Однако, не смотря на то, что обе версии GRUB могут быть установлены одновременно, только одна версия GRUB может быть активирована и использована в качестве загрузчика. Нельзя активировать и использовать 2 загрузчика одновременно.

Для установки GRUB2 сначала задайте для переменной GRUB_PLATFORMS одно или более значение в системном make.conf. Если не определять переменную, то GRUB2 сам определит, какая платформа установлена в системе. Он определит pc (для MBR стиля установки) для архитектур x86/amd64.

Файл /etc/portage/make.confПримеры переменной GRUB_PLATFORMS
# Стандартный PC (BIOS)
GRUB_PLATFORMS="pc"
 
# UEFI на amd64
GRUB_PLATFORMS="efi-64"
 
# Обе UEFI и PC
GRUB_PLATFORMS="efi-64 pc"

После настройки переменной устанавливаем grub:

root #emerge --ask sys-boot/grub:2

Активация загрузчика GRUB2

Если необходимо, монтируем /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) или загрузочный сектор раздела.

Для установки GRUB2 в MBR:

root #grub-install /dev/sda
Installation finished. No error reported.

Установка GRUB2 на EFI совместимую систему:

root #grub-install --target=x86_64-efi
Installation finished. No error reported.
Важно
Если установка GRUB2 на EFI совместимую систему (как в примере выше) выдаёт ошибку, проверьте правильность выставленной переменной GRUB_PLATFORMS в /etc/portage/make.conf

Утилита grub-install может принимать параметр --target для определения ЦПУ/платформы, на которую, grub2 устанавливается. Если данный параметр не задан, то grub-install сам попытается определить параметр. На x86/amd64 будет использован параметр i386-pc по умолчанию.

Автоматическая настройка

GRUB2 традиционно настраивается использованием утилиты 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-.

Например:

Код Пример названия ядер, которые GRUB2 может определить
 /boot/vmlinuz-3.4.3
 /boot/kernel-2.6.39-gentoo
 /boot/kernel-genkernel-x86_64-3.17.1-gentoo-r1

Если используется initramfs, то название initramfs файла должно начинаться с initramfs- или initrd-. Версия initramfs должна совпадать с версией образа ядра. Файлы, созданные с помощью genkernel, также будут найдены.

Например:

Код Пример initramfs имён, которые GRUB2 может определить
 /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 при использовании GRUB2 отредактируйте переменную GRUB_CMDLINE_LINUX вот так:

Файл /etc/default/grubSystemd пример
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. Следующий пример покажет, как написать конфигурационный файл для GRUB2 основываясь на информации из конфигурационного файла GRUB Legacy

grub.conf (GRUB Legacy) grub.cfg (GRUB 2)
timeout 5


title Gentoo Linux 3.2.12
root (hd0,0)
kernel /boot/kernel-3.2.12-gentoo root=/dev/sda3

timeout=5


menuentry 'Gentoo Linux 3.2.12' {
root=hd0,1
linux /boot/kernel-3.2.12-gentoo root=/dev/sda3
}

Заметка
GRUB Legacy нумерует разделы, начиная с 0; GRUB2 нумерует разделы, начиная с 1. Оба загрузчика нумеруют приводы, начиная с 0.

Смотрите также

  • GRUB2 "Полная" статья о GRUB2, которая содержит больше информации и обширный список дополнительных ресурсов.