Plymouth
Plymouth – это приложение запускающееся при старте системы и показывающее анимацию загрузки системы. В Ubuntu впервые появился в версии 10.04. До этого использовались XSplash и Usplash.
Смена темы
Список доступных в репозитории тем можно увидеть выполнив в терминале:
apt-cache search plymouth-theme-

Установить их можно командой:
sudo apt-get install название_пакета
или воспользовавшись менеджером пакетов Synaptic или Центром приложений.
Для выбора нужной темы выполнить:
sudo update-alternatives --config default.plymouth
Ввести цифру, соответствующую теме и Enter .
Затем необходимо обновить конфигурацию:
sudo update-initramfs -u
Устранение проблем
NVIDIA отключили поддержку фреймбуфера для всех видеокарт NVIDIA во избежание проблем со стабильностью. Из-за этого Plymouth может не отображаться или отображаться не правильно. Для исправления этого необходимо в файле /usr/share/nvidia-current-updates/nvidia ваш драйвер закомментировать строку v10ded.*sv.*sd.*bc03sc.* :
#v10ded.*sv.*sd.*bc03sc.*
sudo update-grub-gfxpayload sudo update-grub
Plymouth (Русский)
Состояние перевода: На этой странице представлен перевод статьи Plymouth. Дата последней синхронизации: 12 апреля 2023. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.
Plymouth — это проект Fedora и один из официальных проектов freedesktop.org, реализующий графический экран загрузки системы без бегущих надписей (логов) на экране. Он использует kernel mode setting (KMS, установка разрешения и глубины цвета на уровне ядра) для обеспечения родного разрешения экрана на раннем этапе загрузки, после чего отображает красивый экран загрузки вплоть до появления менеджера входа.
Подготовка
Plymouth главным образом использует KMS (Kernel Mode Setting) для отображения графики. На EFI/UEFI системах plymouth может использовать EFI framebuffer.
Если вы не можете использовать KMS, например, из-за использования проприетарного драйвера или не хотите использовать EFI framebuffer, обратите внимание на Uvesafb, поскольку он поддерживает широкоформатные разрешения. Если у вас не настроены ни KMS ни framebuffer, то Plymouth вернётся в текстовый режим.
Установка
Установите пакет plymouth . Разрабатываемая версия доступна в пакете plymouth-git AUR .
По умолчанию Plymouth записывает сообщения загрузки в /var/log/boot.log и не показывает графический экран загрузки.
- Для отображения графического экрана загрузки добавьте splash в параметры ядра.
- Для обеспечения тихой загрузки также добавьте quiet .
- Для отключения записи лога добавьте plymouth.nolog .
Для раннего запуска Plymouth нужно добавить его в initramfs.
mkinitcpio
Добавьте plymouth в массив HOOKS в mkinitcpio.conf.
/etc/mkinitcpio.conf
HOOKS=(. plymouth . )
dracut
После установки Plymouth dracut автоматически обнаружит его и добавит в ваши образы initramfs. Если автоопределение не сработало, вы можете заставить dracut добавить Plymouth с помощью следующей строки в конфигурации dracut:
/etc/dracut.conf.d/myflags.conf
add_dracutmodules+=" plymouth "
Настройка
Plymouth настраивается через файл /etc/plymouth/plymouthd.conf . Значения по умолчанию описаны в файле /usr/share/plymouth/plymouthd.defaults .
Выбор темы
Plymouth поставляется со следующими темами:
- BGRT: Вариант Spinner, который использует OEM-логотип, если он доступен (BGRT означает Boot Graphics Resource Table)
- Fade-in: «Простая тема с затухающими и разгорающимися мерцающими звездами»
- Glow: «Производственная тема, показывающая процесс загрузки в виде круговой диаграммы»
- Script: «Пример скрипта» (Несмотря на описание, выглядит очень симпатичной темой с логотипом Arch)
- Solar: «Космическая тема, голубая звезда с протуберанцами»
- Spinner: «Простая тема с вращающимся индикатором загрузки»
- Spinfinity: «Простая тема, показывающая вращающийся знак бесконечности в центре экрана»
- Tribar: «Текстовый режим с трёхцветной полосой прогресса»
- (Text: «Текстовый режим с трёхцветной полосой прогресса»)
- (Details: «Резервная тема с подробностями загрузки»)
По умолчанию используется тема bgrt. Чтобы выбрать другую, пропишите её в настройках, например:
/etc/plymouth/plymouthd.conf
[Daemon] Theme=fade-in
или выберите тему с помощью команды:
# plymouth-set-default-theme -R тема
При каждой смене темы необходимо пересобирать initrd . Это произойдёт автоматически при выборе темы командой plymouth-set-default-theme с опцией -R (в противном случае пересоберите образ initramfs самостоятельно).
Установка новых тем
Дополнительные темы доступны в AUR. [1] Также plymouth-kcm добавляет интеграцию с настройками KDE Plasma и предлагает темы, отсутствующие в AUR.
Список установленных тем можно получить командой:
$ plymouth-set-default-theme -l
$ ls /usr/share/plymouth/themes
bgrt details fade-in glow script solar spinfinity spinner text tribar
Задержка отображения
Plymouth позволяет добавить задержку перед отображением графического экрана загрузки:
/etc/plymouth/plymouthd.conf
[Daemon] ShowDelay=5
Если система загружается настолько быстро, что загрузочная анимация успевает лишь моргнуть до запуска DM, можно установить задержку появления экрана загрузки в параметре ShowDelay (в секундах) больше чем длительность загрузки системы, чтобы вместо мерцания отображался просто пустой экран. По умолчанию время задержки 0 секунд.
HiDPI
Пропишите коэффициент масштабирования (целое число) в настройках:
/etc/plymouth/plymouthd.conf
DeviceScale=коэффициент-масштабирования
и пересоберите initrd.
Советы и рекомендации
Отображение сообщений ядра
Чтобы включить отображение сообщений ядра во время загрузки, нажмите Esc .
Плавный переход к экранному менеджеру
GDM поддерживает плавный переход из коробки.
Для других экранных менеджеров можно создать drop-in файл для юнита display-manager.service :
/etc/systemd/system/display-manager.service.d/plymouth.conf
[Unit] Conflicts=plymouth-quit.service After=plymouth-quit.service rc-local.service plymouth-start.service systemd-user-sessions.service OnFailure=plymouth-quit.service [Service] ExecStartPre=-/usr/bin/plymouth deactivate ExecStartPost=-/usr/bin/sleep 30 ExecStartPost=-/usr/bin/plymouth quit --retain-splash
Предпросмотр тем
Для просмотра тем без перезагрузки и пересборки initrd можно перейти в терминал нажатием Ctrl+Alt+F6 , войти как root и набрать:
# plymouthd # plymouth --show-splash
Для выхода из просмотра нажать Ctrl+Alt+F6 снова и набрать:
# plymouth --quit
Изменение фонового изображения темы
В некоторых темах (таких как spinner и bgrt) можно изменить фоновое изображение. Для этого следует заменить файл /usr/share/plymouth/themes/theme/background-tile.png на собственный. Во избежание перезаписи изменённой темы при обновлении plymouth, все действия проводите над копией темы. После изменения не забудьте пересобрать initrd.
Отсутствующее BGRT изображение
Если вы используете тему BGRT, но UEFI не предоставляет логотип производителя, вы можете поместить запасное изображение в /usr/share/plymouth/themes/spinner/bgrt-fallback.png .
Замедление загрузки системы для отображения анимации
Если ваша система загружается настолько быстро, что анимация толком не успевает отобразиться, вы можете замедлить загрузку, создав drop-in файл для службы plymouth-quit.service и добавив туда ExecStartPre=/usr/bin/sleep 5 . Смотрите этот пост на reddit.
Решение проблем
Если у вас возникают проблемы во время загрузки, вы можете временно отключить Plymouth с помощью следующих параметров ядра:
plymouth.enable=0 disablehooks=plymouth
Для записи отладочных сообщений в /var/log/plymouth-debug.log добавьте параметр ядра:
plymouth.debug
Смотрите также
- Оригинальная спецификация
- Обсуждение на форуме
Plymouth
Plymouth — это приложение, запускаемое в самом начале процесса загрузки (еще до монтирования корневой файловой системы) и обеспечивающее графическую анимацию загрузки, пока процесс загрузки происходит в фоновом режиме.
Plymouth доступен из репозиториев Manjaro. Однако для его правильной установки необходимо выполнить некоторые шаги.
Применяются шаги с Wiki Arch, за исключением последнего шага.
При пересборке образа initrd, пресета «linux» не существует. Используйте тот, который соответствует вашей версии ядра:
sudo mkinitcpio -p linux
Если вы не знаете какое значение использовать — загляните в каталог /etc/mkinitcpio.d . В нем содержатся все доступные пресеты (файлы с расширением .preset). Например:
user $ sudo mkinitcpio -p linux419 COPY TO CLIPBOARD
Обратите внимание, что для включения Plymouth при загрузке вы должны отредактировать /etc/default/grub и добавить слово splash в список аргументов для следующей строки, как показано на рисунке:
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
Следите за тем, чтобы не удалить ничего, что уже может там находиться.
Конфигурация
Для удаления Plymouth требуется 4 или 5 шагов. К ним относятся:
- Удаление хука plymouth из /etc/mkinitcpio.conf (Для шифрования диска пользователи должны использовать plymouth-encrypt).
- Пересоздание initramfs для вашего ядра с помощью sudo mkinitcpio -p linux .
- Удаление слова splash & quiet из опций командной строки Grub, путём редактирования /etc/default/grub.
user $ sudo update-grub COPY TO CLIPBOARD
- Настройте менеджер дисплеев:
- Для Xfce
- Для KDE, замена kdm на sddm для большинства новых установок и systemctl может быть успешной без sudo.
- После этого пакет plymouth и его темы можно удалить. Например:
plymouth
Сначала нужно установить GRUB 2 и следующие пакеты:
# apt-get install plymouth make-initrd-plymouth plymouth-system-theme
Затем нужно «сказать» системе, что мы хотим использовать plymouth для отображения графической загрузки. Для этого:
- редактируем файл /etc/initrd.mk. В него нужно в строчку FEATURES добавить параметр plymouth, например так (добавленный параметр выделен):
FEATURES = devmapper lvm compress cleanup plymouth
- выбираем одну из установленных в директории /usr/share/plymouth/themes/ тем (например тему sisyphus)
# plymouth-set-default-theme sisyphus
- запускаем make-initrd для пересоздания нового initrd
- добавляем в /etc/sysconfig/grub2 в переменную GRUB_CMDLINE_LINUX_DEFAULT параметр splash (именно так, а не как раньше splash=silent . )
- владельцы видеокарт, драйвера которых не поддерживают KMS (обычно это проприетарные NVIDIA) также должны добавить в строчку, указанную выше, корректный параметр видеорежима: vga=791 для 1024х768 или vga=788 для 800х600.
- теперь запускаем следующую команду:
# grub-mkconfig -o /boot/grub/grub.cfg
Если все сделано нормально, все должно заработать.
Отладка
- убедитесь что как минимум установлен пакет branding-altlinux-[наименование_установленного_дистрибутива]-bootsplash
- в параметры загрузки ядра можно добавить plymouth:debug
- можно попробовать запустить в X:
* ставим пакет plymouth-devel (в нем есть /usr/lib64/plymouth/renderers/x11.so) * запускаем демон plymouthd --no-daemon --debug --mode=boot * тестируем, должно открыться пара окон со сплешем plymouth show-splash ; for ((I=0; I * останавливаем демона plymouth quit (при отсутствии отклика в консоли - выполнить в другой консоли от суперпользователя)
Известные проблемы
- взаимодействие с luks/sysvinit
- altbug #28625
Отключение
Одноразово: загрузитесь с vga=0 либо нажмите при возникновении картинки при загрузке
# apt-get remove plymouth make-initrd-plymouth
убрать из /etc/initrd.mk из строчки FEATURES слово plymouth