Как изменить фон GRUB
Небольшая инструкция по созданию и установке собственного фона (splashimage) для загрузчика GRUB. Подготовьте изображение, масштабируйте до 640×480, преобразуйте в индексированный XPM с 14 цветами, сожмите в background.xpm.gz и поместите в /boot/grub/backgrounds. Для GRUB2 используйте переменную GRUB_BACKGROUND в /etc/default/grub и выполните обновление конфигурации.
Что нужно
- Изображение, которое вы хотите использовать как фон
- GIMP (или альтернативы ниже) для редактирования
- Текстовый редактор с правами суперпользователя
Краткое определение
GRUB — загрузчик, который запускает операционную систему при старте компьютера. splashimage — изображение, отображаемое на экране меню GRUB.
Подготовка исходного изображения
Выберите простое изображение. При загрузке GRUB графические возможности ограничены, поэтому лучше подойдёт изображение с соотношением сторон 4:3. Избегайте плавных градиентов и мелких тонких деталей: при редукции до 14 цветов такие участки будут выглядеть грубо.
Важно: для старых сборок GRUB используется формат XPM с 14 цветами. GRUB2 поддерживает другие форматы и способ задания фона, см. раздел Совместимость.
Масштабирование и индексирование в GIMP
- Откройте файл в GIMP.
- Меню Image → Scale Image. Установите ширину 640; высота должна автоматически стать 480 при сохранённом соотношении сторон. Нажмите Scale.

- Меню Image → Mode → Indexed.
- Включите generate optimum palette если не включено
- Maximum number of colors: 14
- Color dithering: None
- Нажмите Convert
Изображение потеряет часть градаций цвета. Оцените результат. Если выглядит плохо, попробуйте другое изображение или слегка подкорректируйте композицию.
- Сохраните через File → Save как файл background.xpm.
Сжатие XPM
Откройте терминал и выполните:
gzip ~/background.xpmПосле команды у вас появится файл ~/background.xpm.gz.
Альтернатива через ImageMagick и терминал (без GIMP):
convert input.png -resize 640x480 -colors 14 background.xpm
gzip background.xpmРазмещение файла в каталоге GRUB
Создайте каталог для фонов и переместите туда файл:
sudo mkdir -p /boot/grub/backgrounds/
sudo mv ~/background.xpm.gz /boot/grub/backgrounds/Важно: используйте параметр -p в mkdir, чтобы ошибок не было, если родительский каталог уже существует.
Настройка GRUB (GRUB legacy)
Если у вас старый GRUB с файлом конфигурации /boot/grub/menu.lst, отредактируйте его и добавьте строку splashimage, например:
sudo vi /boot/grub/menu.lstНайдите строку End Default Options и сразу после неё (и до начала записей title) вставьте:
splashimage=(hd0,0)/boot/grub/backgrounds/background.xpm.gzЗамените (hd0,0) на вашу корневую загрузочную партию в синтаксисе GRUB, например (hd0,0) или (hd1,0). В простых конфигурациях можно указать абсолютный путь /boot/grub/backgrounds/background.xpm.gz, но старый GRUB предпочитает запись через обозначение диска.
Перезагрузите систему и проверьте меню GRUB.
Настройка GRUB2
Многие современные дистрибутивы используют GRUB2 и не имеют menu.lst. Для GRUB2 действуйте так:
- Скопируйте изображение в /boot/grub/ или в /boot/grub/backgrounds/:
sudo cp ~/my-background.png /boot/grub/- Откройте /etc/default/grub и добавьте или измените строку:
GRUB_BACKGROUND=/boot/grub/my-background.png- Обновите конфигурацию GRUB:
sudo update-grubGRUB2 поддерживает PNG, TGA и некоторые другие форматы. Формат XPM с 14 цветами обычно нужен только для старых сборок GRUB.
Важно: команда для обновления конфигурации может называться grub-mkconfig или update-grub в зависимости от дистрибутива. В Debian/Ubuntu обычно update-grub вызывает grub-mkconfig.
Советы и альтернативные подходы
- Если фон не отображается, проверьте синтаксис пути и права доступа файла. Файл должен быть доступен на разделе /boot.
- Проверьте версию GRUB через команду grub-install –version. Это поможет понять, используете вы GRUB legacy или GRUB2.
- Для быстрого теста можно временно сделать простое однотонное изображение и убедиться, что механизм работает.
- Если не хотите вручную масштабировать, используйте ImageMagick в скрипте для пакетной обработки.
Контрольный список для установки фона
- Изображение выбрано и читаемо при уменьшении цветов
- Масштабировано до 640×480
- Индексировано до 14 цветов (если требуется старому GRUB)
- Сохранено как background.xpm и сжато в background.xpm.gz
- Помещено в /boot/grub/backgrounds/ с правами root
- Конфигурация menu.lst или /etc/default/grub обновлена
- Конфигурация GRUB перегенерирована (для GRUB2)
Отладка и частые ошибки
- Ничего не меняется при перезагрузке: возможно, вы редактируете не тот файл. Проверьте, используется ли menu.lst или GRUB2.
- Черный фон вместо вашего изображения: путь указан неверно или файл недоступен на разделе /boot.
- Изображение выглядит искажённо: цветовая палитра слишком мала или исходное изображение было неподходящим.
Совет: делайте резервную копию исходного файла конфигурации перед изменением:
sudo cp /boot/grub/menu.lst /boot/grub/menu.lst.backupРекомендации по композиции и безопасности
- Простые контрастные изображения лучше смотрятся при 14 цветах.
- Избегайте важного текста или лиц в краях, где будут появляться элементы меню.
- Не храните в каталоге /boot файлы с неправильными правами. Используйте владельца root и права 644.
Критерии приёмки
- При перезагрузке система показывает изменённый фон в меню GRUB
- Пункты меню читаемы поверх фона
- Нет ошибок загрузчика, и система загружается как обычно
Альтернативы и расширения
- Готовые наборы splashimage можно найти на сайтах с темами рабочего стола, например gnome-look. Используйте их как исходник.
- Для автоматизации: напишите скрипт, который получает картинку, масштабирует, индексирует, сжимает и копирует в /boot/grub/backgrounds.
Пример простого скрипта для автоматизации (bash):
#!/bin/sh
IN="$1"
OUT="/boot/grub/backgrounds/background.xpm"
convert "$IN" -resize 640x480 -colors 14 "$OUT"
gzip -f "$OUT"Запустите с правами суперпользователя или через sudo.
Сводка
Вы подготовили изображение, преобразовали его под требования GRUB и подключили как splashimage. Для старых версий нужен XPM с 14 цветами и запись splashimage в menu.lst. Для GRUB2 достаточно указать GRUB_BACKGROUND и обновить конфигурацию.
Если нужно, предоставьте имя дистрибутива и версию GRUB, и можно будет дать точные команды для вашей системы.
Важно: не забудьте показать, какой фон вы выбрали, и проверить, как читается меню на вашем мониторе.
Похожие материалы
Как проверить орфографию и словарь в Google Docs
Почему 4K выглядит как HD и что делать
365-дневный фотопроект — как начать и довести до конца
Как подключить Nintendo Switch к телевизору
Каналы WhatsApp: найти, создать и управлять