Инструменты пользователя

Инструменты сайта


linux:administration:cofiguration_grub

Это старая версия документа!


# Конфигурация GRUB ## Настройка Grub с помощью Grub Customizer

Это самый простой путь конфигурации загрузчика. Графическая программа настройки *Grub Customizer* позволяет настроить все основные параметры загрузчика, например, фоновое изображение, шрифт, порядок пунктов загрузки, параметры ядра и многое другое.

Программа доступна в официальных репозиториях большинства дистрибутивов.

Для установки в Debian выполните: ``` sudo apt update sudo apt install grub-customizer -y ```

Последующий запуск осуществляется через главное меню или из консоли вводом команды: ``` grub-customizer ```

После внесения через программу Grub Customizer всех желаемых изменений, нажмите кнопку «Сохранить» и утилита автоматически сгенерирует обновленный файл конфигурации GRUB.

_Примечание_: После сохранения выполненных изменений, чтобы увидеть обновленное меню GRUB небходимо перезагрузить систему.
Если изменения внесенные через Grub Customizer не видны после перезагрузки, выполните следующую команду, чтобы вручную обновить GRUB:
``` sudo update-grub ```

Программа Grub Customizer позволяет изменять только базовые параметры, если же нужна более тонкая настройка загрузчика Grub, это необходимо делать посредством ручной настройки конфигурационных файлов . ## Настройка Grub через конфигурационные файлы

Существует два способа настройки Grub через конфигурационные файлы.

  1. Через конфигурационный файл `/etc/default/grub` утилиты *grub-mkconfig*, который позволяет задать общие параметры для загрузчика
  2. Через ручное редактирование `/boot/grub/grub.cfg`

Первый способ - рекомендованный, и с помощью него можно настроить большинство параметров, и в этом случае настройки не собьются когда вы обновите ядро или загрузчик. Второй гораздо более гибкий, но после любого обновления вы потеряете свои настройки. Поэтому если что-то можно настроить через `/etc/default/grub` то настраиваем через него, все остальное - через `/boot/grub/grub.cfg ` g ### Настройка Grub через редактирование файла /etc/default/grub

Список параметров, которые можно настроить данным способом:

- GRUB\_DEFAULT - указывает какой пункт нужно загружать по умолчанию. Может быть указан номер, или полное название или же строка saved, которая значит, что нужно загрузить пункт, указанный с помощью grub-reboot; - GRUB\_SAVEDEFAULT - загружать последнюю использованную запись по умолчанию; - GRUB\_HIDDEN\_TIMEOUT - сколько секунд ждать перед тем, как вывести меню; - GRUB\_HIDDEN\_TIMEOUT\_QUIET - если установлено true, то меню не будет показано; - GRUB\_TIMEOUT - сколько секунд будет показано меню; - GRUB\_CMDLINE\_LINUX - добавить опции ядра для всех ядер, как обычных, так и режима восстановления; - GRUB\_CMDLINE\_LINUX\_DEFAULT - добавить опции ядра только для обычных ядер; - GRUB\_CMDLINE\_LINUX\_RECOVERY - опции ядра, только для режима восстановления; - GRUB\_BADRAM - указать адреса оперативной памяти, которые не нужно использовать; - GRUB\_TERMINAL - модуль терминала для Grub. Можно использовать console только для текстового режима или gfxterm с поддержкой графики; - GRUB\_GFXMODE - разрешение экрана в Grub, лучшие использовать auto, чтобы система выбрала сама то что ей нужно. - GRUB\_DISABLE\_RECOVERY - не включать в меню пункты восстановления; - GRUB\_DISABLE\_OS\_PROBER - не искать другие операционные системы; - GRUB\_BACKGROUND - адрес картинки для фона, должна находиться в той же папке что и файлы grub; - GRUB\_THEME - устанавливает тему Grub.

Пример стандартного конфигурационного файла:

``` GRUB_DEFAULT=0 GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT=«quiet splash» GRUB_CMDLINE_LINUX=«» ```

Здесь: - GRUB\_DEFAULT=0 — загружается первая запись в меню GRUB.
- GRUB\_TIMEOUT=5 — пауза в секундах перед автозагрузкой.
- GRUB\_CMDLINE\_LINUX\_DEFAULT=«quiet splash» — параметры, которые передаются ядру (по умолчанию он загружается без лишнего вывода).
- GRUB\_CMDLINE\_LINUX — дополнительные параметры, которые работают во всех режимах.

После внесения изменений в файл `/etc/default/grub` для обновления непосредственного конфигурационного файла загрузчика GRUB (т.е. файла `/boot/grub/grub.cfg`) необходимо выполнить команду: ``` sudo update-grub ```

Примечание:
Если при обновлении GRUB возникает ошибка, например: «sudo: update-grub: command not found», это означает, что команда `update-grub` не является стандартной, а является псевдонимом и выполняет вместо себя команду `sudo grub-mkconfig -o /boot/grub/grub.cfg`
в данном случае необходимо выплонить указанную команду непосредственно.

### Настройка Grub через /boot/grub/grub.cfg

Файл `/etc/boot/grub/grub.cfg` управляет непосредственно работой загрузчика, здесь указаны все его параметры и настройки, а также сформировано меню. Изменяя этот файл можно настроить Grub как угодно.

Синтаксис файла напоминает синтаксис bash и состоит из нескольких команд, которые что-то делают, загружают и настраивают. Команды могут быть объединены в функции или блоки с помощью инструкций if else, синтаксис которых аналогичен bash.

Основные из этих команд:

  • *load_env** - загрузить переменные окружения из файла
  1. set - установить значение переменной окружения. Используется как set имя_переменной=значение
  • insmod - загрузить модуль из папки с модулями Grub
  • linux - загружает ядро Linux;
  • initrd - подготавливает образ initrd для загрузки ядра;
  • boot - пытается загрузить систему;
  • chainloader - запускает загрузчик из другого раздела;
  • search - установить значение переменной выполнив поиск по заданным параметрам, например, может найти диск по его UUID или метке;
  • menuentry - позволяет создать пункт меню;
/var/www/html/dokuwiki/data/attic/linux/administration/cofiguration_grub.1749840829.txt.gz · Последнее изменение: — so_v_a