Как изменить экран загрузки linux splash screen
Но вот беда, если после первого входа в систему, этот Splash screen с логотипом системы ещё как-то работает, то после установки проприетарного драйвера и перезагрузки системы, напрочь исчезает и система загружается практически с чёрным экраном.
В сети интернет есть множество различных инструкций, равно как и на сайте Compizomania. Для каких-то машин эти инструкции срабатывают, а для каких-то нет. Большинство старожилов в Linux давно уже "забили большой болт" на этот Splash screen, а вот новичков он продолжает беспокоить и они хотели бы видеть логотип дистрибутива до полной загрузки системы.
Сегодня я просматривал свои старые статьи и наткнулся на одну, четырёхлетней давности, по исправлению начальной загрузки системы с Startupmanager.
Startupmanager (Менеджер загрузки) настраивает некоторые параметры GRUB, USplash и Splash screen.
Хотя Startupmanager давно не развивается (попросту заброшен), я всё-таки решил попробовать его ещё раз в действии в дистрибутивах Ubuntu 16.04 и Linux Mint 18, и вы знаете - получилось! Поэтому предлагаю эту инструкцию тем пользователям, кого это заботит.
Установка Startupmanager в Ubuntu/Linux Mint
Откройте терминал, скопируйте и выполните эту команду:
По окончании установки, откройте Менеджер загрузки из системного меню:
Когда система будет просканирована, откроется окно Менеджера загрузки:
Что может Менеджер загрузки?
1. Во вкладке Параметры загрузки, в поле "Время ожидания,с" вы можете уменьшить/увеличить время показа заставки GRUB во время старта и выбора OS, установленных у вас на компьютере.
2. Выбрать какая из OS будет загружаться первой, выбрав её из списка, нажав на кнопке Оперативная система по умолчанию.
3. В параметрах Монитор можно изменить Разрешение. Для тех у кого установлены проприетарные драйверы Nvidia/ATI, после их активации и во время показа заставки Plymouth, отображается очень крупный текст UBUNTU на экране. Подберите для себя оптимальное, нажатием на кнопке Разрешение.
А также я советовал бы владельцам видеокарт Nvidia/AMD, изменить Глубину цвета, выставив параметр 24 бита.
4. В параметрах Разное, решите что вы будете видеть во время загрузки: экран загрузки (картинку) или текст.
5. Во вкладке Дополнительно измените параметр на своё усмотрение Разрешение меню загрузчика GRUB.
После произведенных действий, закройте окно Менеджера загрузки и выполните следующую команду в терминале, которая обновит начальную загрузку:
Начиная с версии 10.04 в Ubuntu используется графический загрузчик plymouth. Именно он и рисует красивую анимацию при загрузки системы. О том, как изменить стандартный логотип Ubuntu перед тёмно-фиолетовым фоном на другие красивости, читайте дальше в этой статье. Непосредственно загрузчик Plymouth установлен в системе по умолчанию в папке /lib/plymouth, проверить это можно комадной plymouth --get-splash-plugin-path
Установка новых тем
Папка с темами для загрузки находится соответственно в /lib/plymouth/themes/
Открываем её. Тем, прямо скажем, негусто. Давайте для начала установим дополнительные готовые темы. Открываем Центр приложений или Synaptic, вводим plymouth-theme. Система выводит список тем для загрузки. Выбираем все с названием вида plymouth-theme-имя.
После успешной установки выполняем в терминале:
и видим список установленных нами тем. Можно выбрать любую, введя её номер. Я выбрал Solar:
После успешного применения изменений, необходимо переконфигурировать образ загрузки системы. Для этого выполняем:
На этом всё. Новая заставка успешно применена.
Для возврата в стандартной выполните:
Создание собственных тем
Теперь немного о создании собственных тем загрузки.
Все файлы, связанные с темой загрузки находятся в каталоге /lib/plymouth/themes/имя_темы
За описание отвечает файл имя_темы.plymouth
За красивую анимацию отвечает скрипт имя_темы.plymouth
Давайте попробуем создать простую тему загрузки. Для этого создаём каталог /lib/plymouth/themes/theme_name
В созданный каталог помещаем фон темы под именем wallpaper.jpg
В терминале выполняем:
и вставляем следующее:
[Plymouth Theme]
Name=Theme_name
Description=Wallpaper only
ModuleName=script
[script]
ImageDir=/lib/plymouth/themes/theme_name
ScriptFile=/lib/plymouth/themes/simple/theme_name.script
wallpaper_image = Image(«wallpaper.jpg»);
screen_width = Window.GetWidth();
screen_height = Window.GetHeight();
resized_wallpaper_image = wallpaper_image.Scale(screen_width,screen_height);
wallpaper_sprite = Sprite(resized_wallpaper_image);
wallpaper_sprite.SetZ(-100);
Для установки новой темы выполняем:
Теперь тему можно выбрать стандартным способом с помощью update-alternatives --config default.plymouth
После выполнения этой команды тему можно увидеть при выключении системы, для установки этой темы в качестве загрузочной выполняем update-initramfs — u от имени суперпользователя.
Итак, мы создали простую статичную заставку. Для создании динамичной анимации необходимо глубокой знание синтаксиса скриптов для plymouth, а подобных документов в сети я не нашёл. Поэтому я поступил проще и сделал несколько заставок на основе имеющихся. Например, вот такую:
Для создания темы выполняем:
В систему будет установлена тема с простым скриптом для загрузки.
Далее выполняем:
В тексте ищем Window.SetBackgroundTopColor (0.16, 0.00, 0.12) и меняем значения на нужный цвет фона, например черный:
Window.SetBackgroundTopColor (0.0, 0.00, 0.0);
А строчку Window.SetBackgroundBottomColor просто закомментируем.
Сохраняем и применяем тему командами, описанными выше.
Следующая заставка основана на стандарной, в ней заменён фон:
Для начала создаем в каталоге /lib/plymouth/themes/ новую папку, например green. Копируем в неё все файлы из каталога ubuntu-logo
Копируем в папку green свой фон wallpaper.jpg (расширение обязательно Png!)
В папке green переименовываем ubuntu-logo.plymouth в green.plymouth и заменяем содержание на
[Plymouth Theme]
Name=Green
Description=A simple green theme
ModuleName=script
[script]
ImageDir=/lib/plymouth/themes/green
ScriptFile=/lib/plymouth/themes/script/green.script
Переименовываем ubuntu-logo.script в green.script. Открываем этот файл, находим и коментируем строчки:
Window.SetBackgroundTopColor (0.16, 0.00, 0.12);
Window.SetBackgroundBottomColor (0.16, 0.00, 0.12);
wallpaper_image = Image(«wallpaper.jpg»);
screen_width = Window.GetWidth();
screen_height = Window.GetHeight();
resized_wallpaper_image = wallpaper_image.Scale(screen_width,screen_height);
wallpaper_sprite = Sprite(resized_wallpaper_image);
wallpaper_sprite.SetZ(-100);
Сохраняем файл.
Устанавливаем тему командой
Теперь новую тему можно выбрать стандартным способом.
Links
Все перечисленные действия выполнены мною в системе Ubuntu 10.10 без проблем и ошибок. Если у Вас что-либо не получилось — это исключительно вмешательство высших сил.
PS Да, я буду рад получить ссылки на полный синтаксис скриптов для plymouth.
Splash экран – это изображение, которое отображается в фоновом режиме во время загрузки операционной системы Linux. Grub ( GRand Unified Bootloader ) – известный широко используемый загрузчик в числе основных дистрибутивов Linux. Если взять Redhat в качестве примера, то он отображает белый или черный фон во время загрузки системы.
Параметры заставки находятся в файле grub.conf , а файл заставки экрана находится в разделе /boot. Если необходимо поменять скучный, белый экран загрузки, на что-нибудь поприятнее, то просто нужно выполнить указанные ниже действия.
Что для этого нужно.
1. ImageMagick (требуется только для способа через командную строку): или GIMP (для способа через графический интерфейс)
2. Образец изображения.
Изменение заставки Grub splash с помощью графического интерфейса
Этот способ основан на использовании графического интерфейса, в котором будет использовать GIMP как редактор изображений.
Шаг 1 . Открыть изображение с помощью GIMP (следовать по пути, Приложения -> Графика -> GNU Image Manipulation Program)
Шаг 2 . Теперь нужно масштабировать размер изображения до 640 х 480 для корректного применения. Для этого надо перейти к опции Image -> Image Scale. Ниже приведены параметры масштабирования. Изменить ширину(Width) до 640 и высоту(Height) до 480. Остальные параметры оставить нетронутыми.
Нажмите на кнопку Scale (масштабировать).
Шаг 3: Затем необходимо указать количество цветов, которые будут использоваться в изображении - 14. Для этого перейти к опции Image -> Mode -> Indexed. Отметить опцию " generate optimum palette(создать оптимальную палитру)" и ввести 14 как максимальное количество цветов (показано ниже).
Нажать на кнопку Convert.
Шаг 4: Сохранить файл. В руководстве используется название "UxTechno.xpm" ниже:
Шаг 5: Заархивировать (сжать) файл через Zip. Для этого надо перейти к местоположению файла -> Щелкнуть правой кнопкой мыши на нем и выбрать "Compress" (Сжать). Выбрать "GZIP" в качестве способа сжатия:
Шаг 6: Теперь скопировать или переместить файл "UxTechno.xpm.gz" в /boot/grub/UxTechno.xpm.gz
Шаг 7: Затем изменить параметр строки splashimage в /boot/grub/grub.conf Файл, который показан ниже, сохранить. В конце содержимое должно выглядеть следующим образом:
generated by anaconda
title Red Hat Enterprise Linux (2.6.32-220.el6.x86_64)
kernel /vmlinuz-2.6.32-220.el6.x86_64 ro root=UUID=1d8c5075-1a5b-4fdc-ba15-0458b65c6012 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD quiet SYSFONT=latarcyrheb-sun16 rhgb
crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM initrd
После перезагрузки сервера появится настроенный загрузочный экран заставки, как показано ниже:
Изменение заставки Grub splash в командной строке
Этот способ для тех, кто любит командную строку и хорошо ей пользуется.
Прежде чем начать, необходимо изменить разрешение изображения. Для этого требуется наличие ПО ImageMagick, установленного в системе Linux. Проверить наличие ImageMagick можно с помощью следующей команды на CentOS / RHEL.
rpm -qa | grep -i ImageMagick
Если IWhen команда показывает пустой результат, то это означает, что ImageMagick не установлен на этой системе. Необходимо установить его с помощью следующей команды.
yum install ImageMagick
После перепроверки, высветится подобный результат:
rpm -qa | grep -i ImageMagick
Шаг 2: Преобразовать разрешение изображения с помощью следующей команды:
convert -depth 8 -colors 14 -resize 640х480 uxtechno_logo.jpg uxtechno_logo.xpm
Необходимо следовать следующим правилам:
• Изображение должно иметь не более 14 цветов.
• Оно должен иметь разрешение 640x480.
• Оно должно быть в формате XPM.
Шаг 3: Затем надо заархивировать файл.
Шаг 4: Скопировать файл в раздел /boot.
cp uxtechno_logo.xpm.gz /boot/grub/
Шаг 5: Изменить параметр splashimage в /boot/grub/grub.conf файле, как показано ниже, и сохранить этот файл.
splashimage = (hd0,0) /grub/uxtechno_logo.xpm
Шаг 6: В конце перезагрузить сервер с помощью команды перезагрузки. Экран загрузки будет отображать новую заставку, как показано на 7 шаге установки GUI-способа.
Contents
Подготовка
'Plymouth главным образом использует KMS (Kernel Mode Setting) для отображения графики. На EFI/UEFI системах plymouth может использовать EFI framebuffer. Если вы не можете использовать KMS, например, из-за использования проприетарного драйвера или не хотите использовать EFI framebuffer, обратите внимание на Uvesafb, поскольку он поддерживает широкоформатные разрешения.
Если у вас не настроены ни KMS ни framebuffer, то Plymouth вернется в текстовый режим.
Установка
Plymouth пока недоступен в официальных репозиториях и должен быть установлен из AUR.
Стабильная версия называется plymouth AUR , но можно использовать версию plymouth-git AUR .
Включение Plymouth в Initcpio
Добавьте Plymouth в HOOKS в mkinitcpio.conf. Он обязательно должен быть добавлен после base и udev :
- Если используется шифрование жестких дисков с хуком encrypt , необходимо заменить encrypt на plymouth-encrypt и поместить его после хука plymouth , чтобы получить доступ к запросу пароля TTY.
- Хук plymouth-encrypt не поддерживает использование параметров PARTUUID или PARTLABEL в cryptdevice= .
- При использовании ZFS encrypted rootнужно установить plymouth-zfsAUR и заменить хук zfs на plymouth-zfs
Если после добавления хука plymouth-encrypt вводимый пароль попадает в фон в текстовом виде, необходимо добавить модуль radeon (для видеокарт radeon), i915 (для видеокарт Intel) или nouveau (для видеокарт nvidia) в строку MODULES в /etc/mkinitcpio.conf
Также этот шаг может потребоваться для работоспособности некоторых тем.
Альтернативный хук plymouth (systemd)
Если в mkinitcpio.conf используется хук systemd , необходимо заменить plymouth на sd-plymouth . На зашифрованной системе вместо encrypt или plymouth-encrypt используйте sd-encrypt :
Переконфигурация образа ядра (см. статью mkinitcpio для более детальной информации)
Командная строка ядра и настройка загрузчика
Необходимо установить quiet splash loglevel=3 rd.udev.log_priority=3 vt.global_cursor_default=0 в параметрах ядра загрузчика. Для Grub2 наиболее простым и безопасным способом сделать это является редактирование файла /etc/default/grub . Приведите указанные переменные к следующему виду:
Можно заставить KMS принудительно запускаться раньше добавив "radeon.modeset=1" (для видеокарт radeon) или "i915.modeset=1" (для видеокарт Intel) в опции ядра:
Чтобы сгенерировать grub.cfg , выполните:
Для GRUB и LILO шаблон аналогичен.
Конфигурация
Плавный переход к дисплейному менеджеру
Для активации плавного перехода следует заменить существующий сервис дисплейного менеджера на поставлющийся вместе с Plymouth (на примерe LightDM):
- Отключите существующий сервис: systemctl disable lightdm.service
- Включите аналогичный сервис, совместимый с Plymouth: systemctl enable lightdm-plymouth.service
Если вы предпочитаете GDM, установите пакет gdm-plymouth AUR , содержащий патчи для "бесшовного" перехода от анимации Plymouth к дисплейному менеджеру.
Задержка загрузки
Если система загружается настолько быстро, что загрузочная анимация не успевает нормально воспроизвестись до запуска DM, можно установить задержку загрузки ShowDelay (в секундах), чтобы вместо мерцания темы показать пустой экран. По умолчанию время задержки равно 5 секундам, однако его можно изменить, чтобы увидеть анимацию на более ранних этапах загрузки.
Изменение фонового изображения темы
В некоторых темах (таких как spinner) можно изменить фоновое изображение. Для этого следует заменить файл /usr/share/plymouth/themes/theme/background-tile.jpg на собственный. Во избежание перезаписи измененной темы при обновлении plymouth, все действия проводите над копией темы.
Выбор темы
Plymouth поставляется со следующими темами:
- Fade-in: "Простая тема с затухающими и разгорающимися мерцающими звездами"
- Glow: "Производственная тема, показывающая процесс загрузки в виде круговой диаграммы"
- Script: "Пример скрипта" (Несмотря на описание выглядит очень симпатичной темой с логотипом Arch)
- Solar: "Космическая тема, голубая звезда с протуберанцами"
- Spinner: "Простая тема с вращающимся индикатором загрузки"
- Spinfinity: "Простая тема, показывающая вращающийся знак бесконечности в центре экрана"
- (Text: "Текстовый режим с трехцветной полосой прогресса")
- (Details: "Резервная тема с подробностями загрузки")
Список установленных тем можно вызвать командой:
Изначально выбрана тема spinner. Чтобы выбрать другую, следует изменить строку Theme= в /etc/plymouth/plymouthd.conf или воспользоваться командой
При каждой смене темы необходимо пересобирать initrd . Это произойдет автоматически при выборе темы темы с помощью plymouth-set-default-theme с опцией -R (в противном случае самостоятельно запустите mkinitcpio -P ).
Для просмотра тем без перезагрузки следует нажать Ctrl+Alt+F6 , войти как root и набрать:
Для выхода из просмотра нажать Ctrl+Alt+F6 снова и набрать:
Советы и рекомендации
Добавление логотипа ArchLinux к темам spinner и BGRT
Чтобы добавить логотип к темам spinner и BGRT, нужно поместить его в папку темы с названием watermark.jpg :
Замена логотипа Arch и создание кастомных тем
Темы, поставляемые с plymouth (fade-in, script, solar, spinfinity), используют логотип, расположенный в /usr/share/plymouth/arch-logo.jpg . Чтобы заменить логитип, можно позаимствовать любой по вкусу из тем в AUR, изменить *.plymouth (и, возможно, *.script ), заменив изображение на выбранное. Из созданной темы следует создать пакет, поскольку изменения в /usr/share/plymouth могут быть переписаны при обновлении.
Устранение неполадок
Примечание: Данный раздел отсутствует в англоязычной версии страницы. Перечисленное может быть неактуально.Маленькие черные квадраты
По каким-то причинам после выполнения команды выйти, Plymouth может оставить черные квадраты вверху экрана видимые поверх всех окон. Два подтвержденных случая, это ноутбук с видеокартой ATI при использовании KMS, и десктоп с видеокартой nVidia использующий framebuffer. Источником проблемы является опция --retain-splash , которая требуется для максимально плавного отображения в процессе загрузки. Обходным путем является принудительное закрытие Plymouth после логина, когда опция --retain-splash более не требуется.
/.xinitrc и добавить следующую линию перед линией запускающей менеджер окружения рабочего стола (подобной "exec openbox-session") чтобы выключить Plymouth:
Примечание: Отсутствие --retain-splash и дополнительный знак & требуются чтобы xinitrc мог продолжать запуск графического окружения и оставить Plymouth выключаться в фоновом режиме. Важно: Если не вставить это перед строкой запуска сессии рабочего стола (к примеру "exec startxfce4") приведет в результате к незапускаемой сессии.Чтобы получить разрешение на принудительное отключение Plymouth без пароля, нужно отредактировать /etc/sudoers :
Но вот беда, если после первого входа в систему, этот Splash screen с логотипом системы ещё как-то работает, то после установки проприетарного драйвера и перезагрузки системы, напрочь исчезает и система загружается практически с чёрным экраном.
В сети интернет есть множество различных инструкций, равно как и на сайте Compizomania. Для каких-то машин эти инструкции срабатывают, а для каких-то нет. Большинство старожилов в Linux давно уже "забили большой болт" на этот Splash screen, а вот новичков он продолжает беспокоить и они хотели бы видеть логотип дистрибутива до полной загрузки системы.
Сегодня я просматривал свои старые статьи и наткнулся на одну, четырёхлетней давности, по исправлению начальной загрузки системы с Startupmanager.
Startupmanager (Менеджер загрузки) настраивает некоторые параметры GRUB, USplash и Splash screen.
Хотя Startupmanager давно не развивается (попросту заброшен), я всё-таки решил попробовать его ещё раз в действии в дистрибутивах Ubuntu 16.04 и Linux Mint 18, и вы знаете - получилось! Поэтому предлагаю эту инструкцию тем пользователям, кого это заботит.
Установка Startupmanager в Ubuntu/Linux Mint
Откройте терминал, скопируйте и выполните эту команду:
По окончании установки, откройте Менеджер загрузки из системного меню:
Когда система будет просканирована, откроется окно Менеджера загрузки:
Что может Менеджер загрузки?
1. Во вкладке Параметры загрузки, в поле "Время ожидания,с" вы можете уменьшить/увеличить время показа заставки GRUB во время старта и выбора OS, установленных у вас на компьютере.
2. Выбрать какая из OS будет загружаться первой, выбрав её из списка, нажав на кнопке Оперативная система по умолчанию.
3. В параметрах Монитор можно изменить Разрешение. Для тех у кого установлены проприетарные драйверы Nvidia/ATI, после их активации и во время показа заставки Plymouth, отображается очень крупный текст UBUNTU на экране. Подберите для себя оптимальное, нажатием на кнопке Разрешение.
А также я советовал бы владельцам видеокарт Nvidia/AMD, изменить Глубину цвета, выставив параметр 24 бита.
4. В параметрах Разное, решите что вы будете видеть во время загрузки: экран загрузки (картинку) или текст.
5. Во вкладке Дополнительно измените параметр на своё усмотрение Разрешение меню загрузчика GRUB.
После произведенных действий, закройте окно Менеджера загрузки и выполните следующую команду в терминале, которая обновит начальную загрузку:
Читайте также: