
Содержание
Итак, для тех, кому интересно узнать как происходит настройка меню загрузчика Grub2, поделюсь опытом.
Кто-то, наверное, может усмехнуться, сказать: «Открыл вот Америку»… Или: «Изобрёл велосипед»… Да, не открыл. И не изобрёл. Придумано не мной. Я много статей прочитал про это, и там больше вопросов, чем ответов.
Скажу честно, за основу взял пару готовых тем, и кое-что в них доработал. Перефразируя выражение из известного советского фильма «Операция Ы, и другие приключения Шурика…» ?:
Всё уже… «придумано» до нас!
Ах,… до нас!..
И ещё, для информации: это больше подойдёт для тех, у кого на компьютере установлено две и более систем, например Windows 7 + Ubuntu (для Windows 10, 11, 8, 8.1, XP и проч. тоже подойдёт). У кого установлена только одна система, но он хочет полюбоваться красотой, расскажу чуть ниже.
Проверено на системе Ubuntu (XUbuntu) 20.04.3 LTS + Windows 7, Linux Mint 20.2 и Debian 11.
Файлы и директории новой темы
С чего начать… В первую очередь откроем терминал: Ctrl + Alt + T (Или Супер + T, она же Win + T, кому как больше нравится) — (все дальнейшие операции будем производить в терминале!). Создадим директорию для своих файлов в «родительской директории», к примеру «~/tema_grub/». Или можете назвать её на свой вкус и цвет (после каждой команды нажимаем Enter, соответственно!):
mkdir -p ~/tema_grub
Переходим в эту директорию:
cd ~/tema_grub
У меня есть уже готовая заготовка, скачиваем следующей командой (немножко длинная, но скопировать и вставить в терминал — нет ничего проще) :
wget https://onstartup.ru/example/iwanoff.zip && unzip iwanoff.zip && rm -f iwanoff.zip
Конфигурация theme.txt
Итак, наша тема скачана и распакована. Для контроля проверяем:
ls -l ~/tema_grub/iwanoff
Должен появиться список файлов. Я назвал эту тему условно (ну так, по себе) ? — «iwanoff». Вы можете назвать её, как угодно, заменив в последствии «iwanoff» на своё название.
Главный файл темы загрузчика Grub2 — «theme.txt». Проверяем его. Переходим в папку с проектом:
cd ~/tema_grub/iwanoff
(я везде указываю абсолютные пути, чтобы не было путаницы), и открываем файл, для просмотра и редактирования. В таких случаях мне больше нравится редактор «gedit». Но, если вы привыкли к другому, то замените «gedit» на свой (здесь и далее):
gedit ~/tema_grub/iwanoff/theme.txt
Если система ругнётся на предыдущую команду, (что, мол, нет такой команды!) то выполните:
Тут потребуется ввести пароль Администратора (Суперпользователя)!
Для Ubuntu и Linux Mint:
sudo apt install gedit
[sudo] пароль для … : (вводим пароль).
Для Debian 11 немного длиннее:
su
Пароль: (вводим пароль)
apt install gedit && exit
а потом снова:
gedit ~/tema_grub/iwanoff/theme.txt
Откроется редактор. Посмотрим на содержимое. Какие-то комментарии я уже поправил для нашего, русского, языка. Всё, что за «#» можете править смело, не сомневаясь.
Цвета, шрифт и фоновое изображение
Итого, что мы видим? Если бегло просмотрим этот документ, то увидим, что он «разбит» на 5 частей. Каждая часть подписана комментарием: «Основные опции», «Главное меню», «Верхний прогресс», «Нижний прогресс» и «Нижнее меню». Вы поймете это, когда увидите меню при загрузке.
Часть первая – «Основные опции»

Смотрим строки сверху.
4-я строка: title-color: "#b0d0d1"
— как понимаете, здесь указан цвет заголовка титула Grub2.
В этой Теме (именно Теме — это не сам загрузчик) я постарался подобрать оптимальные цвета, но можете использовать свои. Как рекомендация, все цвета очень хорошо изложены на Википедии.
Ссылочка: HTML-цвета — Википедия
Смотрим далее строки:title-text: "..."
— это заголовок Grub2. В кавычках можете указать себя любимого ?
desktop-image:
— это фон загрузчика. Пока указан мой. Для эксперимента оставьте, а потом можете указать любую картинку в формате «*.png» или «*.jpg/*.jpeg». Название файла только пропишите здесь своё.
Кстати, рекомендации по картинкам:
где-то советуют взять с разрешением вдвое больше разрешения экрана, где-то — вровень с экраном. Скажу так — не меньше экранного разрешения, это точно. Больше — можно, меньше — нельзя. У меня, например, снята на обычный телефон, но в HDR качестве.
Так же можно воспользоваться обоями рабочего стола или найти в поисковике фразу «Обои для рабочего стола», взять любую понравившуюся картинку со своим разрешением, скачать, и установить на фон.
Далее:desktop-color:
— это цвет подложки. Шесть нолей («#000000») обозначают «чёрный», но! для подложки — он же «бесцветный» (можно заменить на «black»)! Его рекомендую не править!
terminal-font: "Terminus Regular 16"
— это шрифт терминала. Цифра «16» обозначает его величину. Если размер шрифта покажется вам слишком слишком мелким или большим, то в эту Тему предустановлено 4 варианта размера: 12, 14, 16, 18. Вам нужно будет только изменить цифру 16 на ту, которая больше подойдёт.
terminal-box:
— это значки для установленных у вас систем. Они выбираются автоматически.
Далее пошли проценты. Это границы отступов от краёв экрана: левый отступ, верхний отступ, высота и ширина. Сейчас они установлены на максимальное использование экрана. Их лучше оставить по умолчанию.
Часть вторая – «Главное меню»

В этой части стоит отметить несколько моментов. Строки с процентами мы опять пропустим — скажу только, что это размеры Главного меню (слева и ширина, сверху и высота).
item_font = "Ubuntu Regular 20"
— это шрифт и размер элементов «Меню». Здесь предусмотренно два варианта: 17 и 20 (сейчас по умолчанию «20»).
Кстати, появилось ещё несколько шрифтов с разной величиной (больше или меньше, как под экран будет лучше)… Градация от 14-ти до 26-ти.
item_color =
selected_item_color =
— цвет элементов меню (текста и фона). Также можете поменять на свои.
icon_width =
icon_height =
— размер значков установленных систем. Можно сделать чуть больше или меньше.
Части «Верхний прогресс», «Нижний прогресс» и «Нижнее меню» пока пропустим.
В общем-то, для начала, с редактированием всё. Закрываем окно «gedit» «крестиком». Но эту команду (gedit ~/tema_grub/iwanoff/theme.txt
) запомните, если потом захотите редактировать цвета, надписи или фон (что самое главное) — она вам понадобится.
Установка заргузчика в систему
Теперь, как это всё установить в загрузчик. Как известно, в Linux-системах он находится в «/boot/grub/». Соответственно, темы для Grub расположены в «/boot/grub/themes/».
Для того, чтобы перенести их, нам потребуются права «root» (администратора). Для начала убедимся, что директории, куда будем загружать Тему, не существует:
(для Debian)
su
и потом для всех вместе (Debian, Ubuntu и Linux Mint):
sudo ls -l /boot/grub/themes/iwanoff
Если вы получили сообщение:
«Нет такого файла или каталога» — значит всё нормально, можем приступать к созданию директории:
sudo mkdir -p /boot/grub/themes/iwanoff
Следующий этап: копируем нашу тему во вновь созданную директорию:
sudo cp -r * /boot/grub/themes/iwanoff
Убеждаемся, что файлы созданы (снова повторяем команду):
sudo ls -l /boot/grub/themes/iwanoff
Получаем список файлов. Скопировано корректно.
Настройка загрузчика
Приступаем к настройке Grub. Для того, чтобы в последующем больше не приходилось перенастраивать файл «grub.cfg», создаём среду для автоматической его регенерации.
Для этого настраиваем конфигурационный файл по умолчанию — «/etc/default/grub». Тем, кто его уже менял, достаточно добавить строчку в самый низ файла:
GRUB_THEME="/boot/grub/themes/iwanoff/theme.txt"
и всё. Переходить к финальным итогам (внизу).
Для тех, кто его «трогает» в первый раз — более подробно. Есть два варианта загрузки: первый — это каждый раз загружать одну и ту же систему, а второй — это загружать систему, которая использовалась в последний раз.
То есть, если у вас «завис» компьютер (не важно, в Windows, Ubuntu, Debian, Linux Mint, или другой системе), то можете нажать кнопку перезагрузки и спокойно пойти попить чайку, кофейку (или ещё чего-то).
Компьютер перегрузится, и снова зайдёт в ту же систему, в которой вы в последний раз работали. Для этого создадим новый файл. Но!.. Для начала сохраним резервную копию текущей конфигурации.
Основной файл настроек
На тот случай, если вам не понравится новое меню — вернётесь к стандартной загрузке. Делаем это следующим образом (резервируем):
sudo mv /etc/default/grub /etc/default/grub.bak
Копия уже есть. Создаём новый файл:
sudo gedit /etc/default/grub
В открытом окне редактора вставляем текст:
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT="saved"
# GRUB_TIMEOUT_STYLE="hidden"
GRUB_TIMEOUT="60"
GRUB_DISTRIBUTOR="`lsb_release -i -s 2> /dev/null || echo Debian`"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL="console"
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE="640x480"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID="true"
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
GRUB_SAVEDEFAULT="true"
GRUB_THEME="/boot/grub/themes/iwanoff/theme.txt"
Нажимаем кнопку «Сохранить»…
И, закрываем редактор.
Коротенько поясню: данная конфигурация позволит вам загружаться с последней использованной системы. Это, по сути, замена «Grub-Customizer», который в последнее время так разрекламировали на всю сеть… И без него можем справиться… 🙂
Собственно говоря — и ВСЁ! Настройка закончена!
Да! Внимание! Если у вас открыты какие-то приложения — закройте их, вдруг там есть какая-то важная и не сохранённая информация…
Финальный этап: (я писал об этом выше, для тех, кому только надо добавить в файл «grub» строку: "GRUB_THEME="/boot/grub/themes/iwanoff/theme.txt"
).
Обновляем загрузчик, перегружаемся… И… Наслаждаемся новым меню!
Для этого вводим команду:
sudo update-grub && sudo reboot
Это займёт около минуты. В процессе вы можете наблюдать за обновлением информации:
«Found….», «Найдена тема……», «Найден образ……», «Найден Windows… XX на sda…»…

Заранее слышу вопрос: «А почему так долго не загружается? Аж 60 секунд?!»
А это для того, чтобы вы успели всё внимательно рассмотреть ? . Можете просто нажать Enter
Ну а когда всё внимательно рассмотрели, и компьютер загрузился (не важно, в первый раз, или вы раз 10 перезагрузились), чуть-чуть подредактируем grub (открываем терминал, вводим):
(для Debian):
su
далее для всех систем Linux:
sudo gedit /etc/default/grub
находим строчку:
GRUB_TIMEOUT="60" - это 60 секунд,
меняем на значение, которое больше устроит (0 — совсем без задержки — это для тех, у кого только одна система, 1, 2, 3, 5, 10, 15, 30 и т.д., сколько хотите…), закрываем редактор, и опять:
sudo update-grub && sudo reboot
За сим всё! Надеюсь, вам всё понравилось! ?
Верните всё как было!
P.S.:
Да, если вас что-то не устроило, и вы хотите повернуть всё вспять (вернуть, как было), сделайте следующее (в терминале):
(для Debian):
su
для всех (в т.ч., и Debian):
sudo rm -f /etc/default/grub && sudo mv /etc/default/grub.bak /etc/default/grub
sudo rm -R /boot/grub/themes/iwanoff
sudo update-grub && sudo reboot
И снова всё как было, вернётесь к прежней загрузке…… ? ?
Если у вас появятся вопросы — пишите, постараюсь на них разумно ответить!
А если требуется восстановить загрузку, то почитайте статью: grub rescue – что делать?
P.P.S.:
В следующей статье постараюсь описать, как создать Tему в графической оболочке, и рассказать, что такое файловый менеджер «Krusader». Очень полезная вещь!
Спасибо за внимание!
© Iwanoffъъ
https://radioold.101.ru/
Ещё один полезный совет, для тех, кто использует «Тему для загрузки Grub».
Он не вошёл в «Основную статью», про него я узнал чуть позже.
В файле «grub» есть такая строка:
#GRUB_GFXMODE="640x480"
Она закомментирована. Это — разрешение экрана, которое используется для отображения самого «Меню» при загрузке. Был у меня такой случай: настраивал старенький компьютер и «система» не распознаёт видео-карту. Разрешение экрана очень плохое.
Так вот в этой строке как раз и можно изменить то самое разрешение.
Для того, чтобы узнать полный список всех поддерживаемых разрешений, при появлении «Меню» нажать кнопку «C» для перехода в командную строку. Ввести команду:
если загрузка происходит из MBR-записи, или:
если загрузка по UEFI. Получаем весь список. Переписываем его на «бумажку», перезагружаемся:
После загрузки системы редактируем файл «grub»:
Убираем «#», и пишем своё значение из списка, к примеру:
GRUB_GFXMODE="1280x1024"
Сохраняем, закрываем Редактор, и обновляем Grub:
Строка меняет разрешение только в период загрузки системы?
Да, строка изменяет разрешение экрана только на период загрузки. При входе в X-систему (графическую), если таковая имеется, разрешение возвращается к установленному ранее.
Не секрет, что при загрузке последних «Linux-систем» на экране отображается «заставка». Различная, в каждой версии ОС.
Но, если нажать «Esc» — будет виден «Лог» загрузки. И там отчётливо видно, какая служба запустилась, а какая нет.
А при хорошем разрешении экрана гораздо удобней смотреть этот «Лог». И, в случае «системных ошибок», — проще их отследить и исправить. Или «рассмотреть» какие-то «ненужные» службы, и в последствии их удалить.
Извените, но тогда не понимаю что произошло, но у меня перестало работать, жотя до этого все работало. Делаю по инструкции как и раньше, но граб как был родной так и остается. Ни чего не понимаю
Начнём с начала:
1. Сколько Операционных Систем у Вас установлено на компьютере? Какие это системы, если их две и более?
2. Права «root» проверяли? Имеются?
3. Проверки копирования файлов делаете? Например, команда:
что выдаёт? (вместо "iwanoff" может быть другая директория, если Вы её изменяли).
В качестве пояснения ещё хочу добавить: вчера я досконально исследовал сам Grub непосредственно в Linux Mint 21.2. И могу точно сказать: Он не изменился. И проблема не в нём.
Тут что-то другое. Одно из моих предположений: как Вы устанавливали новую систему? Это была «чистая» установка или Вы ставили её «рядом» с предыдущей?
Нет, вчистую и причем пробова и на дебиан, все тоже самое
А пришлите, пожалуйста, вывод команды:
Он должен выглядеть, примерно, так:
Диск /dev/sda: 20 GiB, 21474836480 байт, 41943040 секторов
Disk model: HARDDISK
Единицы: секторов по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер I/O (минимальный/оптимальный): 512 байт / 512 байт
Тип метки диска: gpt
Идентификатор диска: BF56B235-5D41-4294-BC85-0D50D5549460
Устр-во начало Конец Секторы Размер Тип
/dev/sda1 2048 31999999 31997952 15,3G Файловая система Linux
/dev/sda2 32000000 41940991 9940992 4,7G Файловая система Linux
(скопируйте из терминала и вставьте здесь)
вышла новая версия линукс минт 21.2 и все это больше не работает
Понял, спасибо! Поправлю статью.
Я так понимаю, что у Вас возникли сложности с установкой «Темы Grub2» в загрузчик системы Linux Mint 21.2.
Как рекомендации для Вас:
1-е. Проверьте, имеются ли у Вас Права «root».
2-е. Действуйте строго по инструкции, последовательно выполняя каждый шаг. При этом — не закрывайте «Терминал».
3-е. Обязательно выполняйте «проверки» копирования файлов. Это команды:
ls -l...
с параметрами.И у Вас всё получится! ))
С позволения автора. Автором является уважаемый Роман.
Здравствуйте, Уважаемые Господа! ))
Я сегодня всё тщательно проверю, и обязательно дам ответ -- работает ли под Linux Mint 21.2 или нет, и откуда "ноги" растут. )))
Здравствуйте, Андрей!
Как Я и обещал – проверил Linux Mint 21.2. Увы, должен Вас огорчить – к сожалению... всё работает!
Здравствуйте!
Как заменить надпись линукс минт и тд на просто линукс
«Как заменить надпись линукс минт и тд на просто линукс»?
К сожалению, не прошло и года, но я только сейчас обнаружил этот вопрос…
Я так понимаю, что речь идёт о строчке в пункте «Меню»? То есть, чтобы эта строчка содержала только одно слово: «Linux»?
В таком случае надо исправить одну строку в одном из файлов. Для этого выполняем команду:
В этом файле ищем строку:
GRUB_TITLE=Linux Mint 21.2 Cinnamon # (— это «моя» версия, а Вы ищете «свою»!)
и изменяем значение после знака «=» на своё произвольное. Это касается непосредственно «Linux Mint». Для других ОС нужно искать отдельное решение.
Ну а потом выполняем обновление Grub и перезагрузку в одной команде:
Это то, о чём Вы спрашивали?
Благодарю за интересную и полезную статью, буду рад видеть новые публикации от уважаемых читателей сайта!
Тут, по эксперименту, поставил Windows 11 на жёсткий диск 🙁 А она ставится только на UEFI в BIOS'e.
Пришлось и Ubuntu ставить на UEFI... И даже расстроился!...
Думал, вышеприведённая схема не сработает на этом типе загрузки 🙁
Проверил - а всё работает!!! И Ubuntu грузится, и Windows!!! Так что, теперь проверено на всех типах систем! Можете использовать эту схему безбоязненно!
Всех с Наступающим Новым Годом!!! (пишу пост непосредственно перед наступлением!)
© Iwanoffъъ
Спасибо за полезное примечание, Роман. Загрузка современных интерфейсов UEFI является важной проверкой для многих систем.
Поздравляю с Наступающим Новым Годом! ?
Спасибо!!!