Перейти к содержимому

Plymouth linux что это

  • автор:

Plymouth

Plymouth – это приложение запускающееся при старте системы и показывающее анимацию загрузки системы. В Ubuntu впервые появился в версии 10.04. До этого использовались XSplash и Usplash.

Смена темы

Список доступных в репозитории тем можно увидеть выполнив в терминале:

apt-cache search plymouth-theme-

Стандартная тема Plymouth в Ubuntu

Установить их можно командой:

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 поставляется со следующими темами:

  1. BGRT: Вариант Spinner, который использует OEM-логотип, если он доступен (BGRT означает Boot Graphics Resource Table)
  2. Fade-in: «Простая тема с затухающими и разгорающимися мерцающими звездами»
  3. Glow: «Производственная тема, показывающая процесс загрузки в виде круговой диаграммы»
  4. Script: «Пример скрипта» (Несмотря на описание, выглядит очень симпатичной темой с логотипом Arch)
  5. Solar: «Космическая тема, голубая звезда с протуберанцами»
  6. Spinner: «Простая тема с вращающимся индикатором загрузки»
  7. Spinfinity: «Простая тема, показывающая вращающийся знак бесконечности в центре экрана»
  8. Tribar: «Текстовый режим с трёхцветной полосой прогресса»
  9. (Text: «Текстовый режим с трёхцветной полосой прогресса»)
  10. (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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *