Plymouth (Русский)

From ArchWiki
Jump to: navigation, search

Tango-preferences-desktop-locale.pngЭта страница нуждается в сопроводителеTango-preferences-desktop-locale.png

Статья не гарантирует актуальность информации. Помогите русскоязычному сообществу поддержкой подобных страниц. См. Команда переводчиков ArchWiki

Tango-dialog-warning.pngИнформация в этой статье или разделе устарелаTango-dialog-warning.png

Причина: rc.d references. Needs update, see Systemd (Русский). (Обсудить)

Plymouth — это проект из Fedora, обеспечивающий загрузку системы без бегущих надписей (логов) на экране. Он базируется на kernel mode setting (KMS, установка разрешения и глубины цвета на уровне ядра) для обеспечения родного разрешения экрана на раннем этапе загрузки, после чего отображает привлекательный загрузочный экран вплоть до этапа выбора пользователя.

Подготовка

Важно: Plymouth в настоящее время находится в активной разработке и может содержать ошибки.

Plymouth главным образом использует KMS для обработки графики. Если вы знаете что это такое и уже настроили, смело переходите к Установка.

В противном случае у вас есть два варианта:

  1. Установить и настроить KMS: пожалуйста, обратитесь к инструкциям для видеокарт ATI[broken link: invalid section], Intel[broken link: invalid section] или Nvidia[broken link: invalid section]. Все они требуют редактирования/пересборки ядра. Это будет описано позже в этой статье, поэтому редактирование образа ядра пока может быть пропущено.
  2. Несмотря на то, что использование KMS предпочтительно, Plymouth может работать без них. Если у вас нет возможности использовать KMS, то вам понадобится framebuffer[broken link: invalid section]. Рекомендуется использовать драйвер Uvesafb, так как он поддерживает разрешения широкоформатных дисплеев.

Если у вас не настроены ни KMS ни framebuffer, то Plymouth вернется в текстовый режим.

Установка

Plymouth пока недоступен в официальных репозиториях и должен быть установлен из AUR.

Стабильная версия называется plymouthAUR, последний стабильный релиз был в июле 2012 года [1], но можно использовать версию plymouth-gitAUR.

Конфигурация

Включение Plymouth в Initcpio

Добавьте Plymouth в HOOKS в mkinitcpio.conf. Он обязательно должен быть добавлен после base, udev и autodetect:

/etc/mkinitcpio.conf
HOOKS="base udev autodetect [...] plymouth"
Важно: Если используется шифрование жестких дисков с encrypt hook, необходимо заменить его на plymouth-encrypt чтобы получить доступ к запросу пароля TTY.

Для более раннего запуска KMS надо добавить модуль radeon (для видеокарт radeon), i915 (для видеокарт Intel) или nouveau (для видеокарт nvidia) в строку MODULES в /etc/mkinitcpio.conf:

/etc/mkinitcpio.conf
MODULES="i915"
или
MODULES="radeon"
или
MODULES="nouveau"

Переконфигурация образа ядра (см. статью mkinitcpio для более детальной информации):

# mkinitcpio -p [имя вашего ядра]


Командная строка ядра

Неоходимо установить quiet splash режим ядра в параметрах командной линии загрузчика. Ниже пример для Grub2 и /boot/grub/grub.cfg (для GRUB и LILO шаблон аналогичен):

linux /boot/vmlinuz-linux root=/dev/... ro quiet splash

Можно заставить KMS принудительно запускаться раньше добавив "radeon.modeset=1" (для видеокарт radeon) or "i915.modeset=1" (для видеокарт Intel) в опции ядра:

linux /boot/vmlinuz-linux root=/dev/... radeon.modeset=1
linux /boot/vmlinuz-linux root=/dev/... i915.modeset=1

Так же можно отредактировать файл /etc/default/grub и добавить опции ядра в строке GRUB_CMDLINE_LINUX_DEFAULT="". Чтобы сгенерировать grub.cfg выполните:

# grub-mkconfig -o /boot/grub/grub.cfg

Изменение темы

Plymouth имеет на выбор темы:

  1. Fade-in: "Простая тема с затухающими и разгорающимися мерцающими звездами"
  2. Glow: "Производственная тема, показывающая процесс загрузки в виде круговой диаграммы"
  3. Script: "Пример скрипта" (Несмотря на описание выглядит очень симпатичной темой Arch)
  4. Solar: "Космическая тема, голубая звезда с протуберанцами" and
  5. Spinfinity: "Простая тема показывающая вращающийся знак бесконечности в центре экрана"
  6. (Text: "Текстовый режим с трехцветной полосой прогресса")
  7. (Details: "Резервная тема с подробностями загрузки")

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

plymouth-set-default-theme -l

Для просмотра тем без перезагрузки. Нажать Ctrl+Alt+F2 для переключения консоли, войти как root и набрать:

plymouthd
plymouth --show-splash

Для выхода из просмотра нажать Ctrl+Alt+F2 снова и набрать:

plymouth --quit

Установить желаемую тему можно утилитой plymouth-set-default-theme, например:

# plymouth-set-default-theme spinfinity

Соберите образ ядра:

# mkinitcpio -p [name of your kernel preset]

Перезагрузитесь.

Устранение неполадок

Маленькие черные квадраты

По каким-то причинам после выполнения команды выйти, Plymouth может оставить черные квадраты вверху экрана видимые поверх всех окон. Два подтвержденных случая, это ноутбук с видеокартой ATI при использовании KMS, и десктоп с видеокартой nVidia использующий framebuffer. Источником проблемы является опция --retain-splash , которая требуется для максимально плавного отображения в процессе загрузки. Обходным путем является принудительное закрытие Plymouth после логина, когда опция --retain-splashболее не требуется.

Нужно отредактировать ~/.xinitrc и добавить следующую линию перед линией запускающей менеджер окружения рабочего стола (подобной "exec openbox-session") чтобы выключить Plymouth:

sudo /bin/plymouth quit &
Примечание: Отсутствие --retain-splash и дополнительный знак & требуются чтобы xinitrc мог продолжать запуск графического окружения и оставить Plymouth выключаться в фоновом режиме.
Важно: Если не вставить это перед строкой запуска сессии рабочего стола (к примеру "exec startxfce4") приведет в результате к незапускаемой сессии.

Чтобы получить разрешение на принудительное отключение Plymouth без пароля, нужно отредактировать /etc/sudoers:

$ su
# EDITOR=nano visudo

и добавить:

Ваш_Логин      ALL=(ALL) NOPASSWD: /bin/plymouth

После этого необходимо перезагрузиться.

Выключение <-- Все еще проблема?

Если имеется проблема с выключением Power Off, к примеру компьютер перезагружается вместо выключения, причиной может быть или KMS или Plymouth. Если причина в Plymouth, то необходимо или запустить "plymouth --mode ..." в случае перезагрузки или halt или отредактировать /etc/rc.d/functions.d/plymouth.functions и закомментировать следующий блок:

if [ "$0" == "/etc/rc.shutdown" ]; then
...
fi

Также смотри

Обсуждение на форуме