GRUB2: основные настройки

Не так давно в archlinux всё же прекратили поддержку grub-legacy. Теперь выбор варьируется между двумя загрузчиками: Syslinux и Grub2. Как ясно из названия поста, автор отдаёт предпочтение второму варианту. Говорят, syslinux проще, поэтому большинство пользователей может обратить внимание на него. А вот владельцам UEFI BIOS рекомендуют второй граб.

Установка

# pacman -S grub-bios grub2-common
# grub-install /dev/sda
# grub-mkconfig -o /boot/grub/grub.cfg

Теперь заглянем в файл /etc/default/grub

# /etc/default/grub

GRUB_DEFAULT=0 # загружаемый по умолчанию пункт меню, 0 - первый пункт
GRUB_TIMEOUT=5 # тайм аут, когда можно выбрать другой пункт, 5 - 5 секунд
GRUB_DISTRIBUTOR="Arch" # "поставщик" вашей версии grub'а
GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi" # параметры загрузки для обычной загрузки
GRUB_CMDLINE_LINUX=""  # параметры загрузки (обычной и в режиме восстановления)
GRUB_PRELOAD_MODULES="part_gpt part_msdos" # дополнительные модули загрузки

GRUB_TERMINAL_INPUT=console # использование консоли

# разрешение графического меню (800х600, например)
GRUB_GFXMODE=auto

# будет ли включен режим восстановления
GRUB_DISABLE_RECOVERY=true

Подробнее можно почитать здесь.

archlinux_grub

Изменение параметров:

Настройка яркости экрана:

# /etc/default/grub:

GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi_backlight=vendor"

После чего:

# grub-mkconfig -o /boot/grub/grub.cfg

Загрузка двух и более операционных систем

# pacman -S os-prober
# grub-mkconfig -o /boot/grub/grub.cfg

Распознать имеющиеся ОС должен автоматически. Если этого не произошло, придётся добавить вручную, после чего снова переконфигурировать конфигурационный файл grub.

Как добавить Windows?

В файл /etc/grub.d/40_custom внести строки:

menuentry "Microsoft Windows 7 BIOS-MBR" {
    insmod part_msdos
    insmod ntfs
    insmod search_fs_uuid
    insmod ntldr
    search --fs-uuid --no-floppy --set=root C474B30B74B2FEEC
    ntldr /bootmgr
}

где fs-uuid - ID вашего раздела с Windows. Определить его можно с помощью команды blkid:

# sudo blkid
/dev/sda1: UUID="C474B30B74B2FEEC" TYPE="ntfs"

После чего обновить конфигурацию grub2:

# grub-mkconfig -o /boot/grub/grub.cfg

Украшательства

Для Archlinux можно найти неплохие темы в AUR.

Чтобы поставить тему, послужившую иллюстрацией к данному посту, проделываем следующие шаги - установим тему и скопируем её в директорию с grub:

$ yaourt grub2-theme-archlinux
# cp -r /usr/share/grub/themes/Archlinux /boot/grub/themes/

Открываем в текстовом редакторе /etc/default/grub:

# /etc/default/grub

GRUB_THEME="/boot/grub/themes/Archlinux/theme.txt"

Рекомендуется установить разрешение экрана загрузчика к данной теме:

GRUB_GFXMODE=1024x768

После чего снова:

# grub-mkconfig -o /boot/grub/grub.cfg
Генерируется grub.cfg …
Найдена тема: /boot/grub/themes/Archlinux/theme.txt
Найден образ linux: /boot/vmlinuz-linux
Найден образ initrd: /boot/initramfs-linux.img
No volume groups found
Найден Windows 7 (loader) на /dev/sda1
завершено

Также для эстетических целей используется plymouth (его часто можно увидеть в user-friendly дистрибутивах, например, в ubuntu), но автор сего зверя не ставит и не рекомендует по одной простой причине: он снижает скорость загрузки.