「Plymouth」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(校正)
(→‎インストール: 情報を翻訳して更新)
17行目: 17行目:
 
==インストール==
 
==インストール==
   
Plymouth は [[AUR]] から入手できます、 安定版パッケージは {{AUR|plymouth}} で、開発版は {{AUR|plymouth-git}} です。アップストリームの plymouth リリースは非常に不規則なスケジュールで行われるため、一般的には {{AUR|plymouth-git}} を使うことが推奨されます、なぜならほとんどのユーザーにとって安定版パッケージよりも問題が発生する可能性が低いからです。
+
Plymouth 安定版パッケージは {{Pkg|plymouth}} で、開発版は {{AUR|plymouth-git}} です。
   
  +
デフォルトでは、Plymouth はグラフィカルなスプラッシュスクリーンにブートメッセージを表示せず、{{ic|/var/log/boot.log}} に記録します。
===plymouth フック===
 
   
{{ic|plymouth}} [[mkinitcpio.conf]] の HOOKS 行追加してください。必ず {{ic|base}} と {{ic|udev}} の後に追加してください:
+
* スプラッシュ画面見たい場合は、[[カーネルパラメータ]] に {{ic|splash}} 追加してください
  +
* [[サイレントブート]]をしたい場合は、{{ic|quiet}} も追加してください。
  +
* ブートメッセージの記録を無効にしたい場合は、{{ic|plymouth.nolog}} も追加してください。
   
  +
初期ブート時に Plymouth を起動するには、Plymouth を含むイメージを作成するために [[initramfs]] ジェネレータを設定しなくてはなりません。
{{hc|/etc/mkinitcpio.conf|2=HOOKS="base udev plymouth [...] "}}
 
   
  +
=== mkinitcpio ===
{{Warning|
 
* {{ic|encrypt}} フックで [[dm-crypt]] を使用する場合、{{ic|encrypt}} フックは {{ic|plymouth-encrypt}} に置き換えてください。置き換えないと TTY のパスワードプロンプトが表示されなくなります。
 
* {{ic|1=cryptdevice=}} パラメータで PARTUUID や PARTLABEL を使用すると {{ic|plymouth-encrypt}} フックが機能しなくなります。
 
* [[ZFS#ネイティブ暗号化]] を使うには、{{AUR|plymouth-zfs}} をインストールして {{ic|zfs}} フックを {{ic|plymouth-zfs}} に置き換える '''必要''' があります。
 
}}
 
   
  +
{{ic|plymouth}} を [[mkinitcpio.conf]] の {{ic|HOOKS}} 行に追加してください。
{{ic|plymouth-encrypt}} フックの追加後に、入力したテキストがパスワードプロンプトではなく後ろに行ってしまう場合、initramfs に(カーネル)グラフィックドライバーを追加する必要があります。例えば、Intel のグラフィックを使っている場合:
 
   
{{hc|/etc/mkinitcpio.conf|2=MODULES="i915 [...]"}}
+
{{hc|/etc/mkinitcpio.conf|2=
  +
HOOKS=(... plymouth ...)
  +
}}
  +
=== dracut ===
   
  +
Plymouth をインストールすると、[[dracut]] が自動的にそれを検出し、initramfs イメージに追加します。自動検出が失敗した場合は、[[dracut]] 設定に次の行を追加することで、[[dracut]] に強制的に Plymouth を追加することができます。
===別の plymouth フック (systemd)===
 
[[mkinitcpio.conf]] で {{ic|systemd}} フックを使用している場合、{{ic|plymouth}} を {{ic|sd-plymouth}} に置き換えてください。さらに、ハードドライブ暗号化を使っている場合、{{ic|encrypt}} や {{ic|plymouth-encrypt}} のかわりに {{ic|sd-encrypt}} を使ってください:
 
   
  +
{{hc|/etc/dracut.conf.d/myflags.conf|2=
{{hc|/etc/mkinitcpio.conf|2=HOOKS="base systemd sd-plymouth [...] sd-encrypt [...]"}}
 
  +
add_dracutmodules+=" plymouth "
 
  +
}}
===カーネルコマンドライン===
 
 
[[カーネルパラメータ]] に {{ic|1=quiet splash vt.global_cursor_default=0}} を追加してください。コンソールへの出力を制限する他のパラメータについては [[サイレントブート]] を参照してください。
 
   
 
==設定==
 
==設定==

2023年5月11日 (木) 14:17時点における版

Plymouth は Fedora のフリッカーフリーなグラフィカルブートプロセスを提供するためのプロジェクトです。カーネルモード設定 (KMS) を使って出来るだけ早い段階でディスプレイの最大解像度に設定し、ログインマネージャが表示されるまで、キレイなスプラッシュスクリーンを提供します。

準備

まず、Plymouth は カーネルモード設定 (KMS) を使ってグラフィックを表示します。(プロプライエタリドライバを使っているなどの理由で)あなたが KMS を使えない場合、代わりにフレームバッファを使う必要があります。EFI/UEFI 環境の場合、plymouth は EFI フレームバッファを利用します。BIOS 環境の場合、ワイド画面を機能させることができる Uvesafb が推奨されます。

KMS もフレームバッファも使えない場合、Plymouth はテキストモードになります。

インストール

Plymouth の安定版パッケージは plymouth で、開発版は plymouth-gitAUR です。

デフォルトでは、Plymouth はグラフィカルなスプラッシュスクリーンにブートメッセージを表示せず、/var/log/boot.log に記録します。

  • スプラッシュ画面を見たい場合は、カーネルパラメータsplash を追加してください。
  • サイレントブートをしたい場合は、quiet も追加してください。
  • ブートメッセージの記録を無効にしたい場合は、plymouth.nolog も追加してください。

初期ブート時に Plymouth を起動するには、Plymouth を含むイメージを作成するために initramfs ジェネレータを設定しなくてはなりません。

mkinitcpio

plymouthmkinitcpio.confHOOKS 行に追加してください。

/etc/mkinitcpio.conf
HOOKS=(... plymouth ...)

dracut

Plymouth をインストールすると、dracut が自動的にそれを検出し、initramfs イメージに追加します。自動検出が失敗した場合は、dracut 設定に次の行を追加することで、dracut に強制的に Plymouth を追加することができます。

/etc/dracut.conf.d/myflags.conf
add_dracutmodules+=" plymouth "

設定

スムーズな移行

GDM を使っている場合は、smooth transition をサポートしている gdm-plymouthAUR をインストールしてください (gdm を自動で置き換えるので他の手順は必要ありません)

Optimus-managerGDM ユーザは gdm-plymouth-primeAUR をインストールできます。これは gdm-plymouthAUR のフォークで Prime 切り替えに必要なパッチを適用しています。

他のディスプレイマネージャSDDMLightDMLXDM)を使っているユーザーは以下のことをする必要があります。

  1. 例えば lxdm.service のような ディスプレイマネージャ ユニットを 無効化 します。
  2. 有効化 すると、それぞれの DM-plymouth ユニットが提供されます (例:lxdm-plymouth.service)

起動を遅らせる

バージョン 0.9.0 から、plymouth には /etc/plymouth/plymouthd.conf に設定できる新しいオプションが存在します:

/etc/plymouth/plymouthd.conf
[Daemon]
Theme=spinner
ShowDelay=5

起動が早い環境では、ディスプレイマネージャやログイン画面が表示される前にスプラッシュ画面が一瞬しか表示されない場合があります。ShowDelay を設定することで秒数単位で起動を長くすることができます。デフォルトは5秒間ですが、短くすることでスプラッシュ画面が早く表示されるようになります。

背景画像を変更する

特定のテーマ( Spinner など)では、背景画像を変更できます。 Spinner では、デフォルトでは灰色のノイズパターンです。 変更するには、 /usr/share/plymouth/themes/theme/background-tile.png を目的の画像に置き換えます。 これを行うときは、Plymouth の更新によって上書きされないように、新しいテーマをコピーして作成することをお勧めします。 変更したテーマを再生成することを忘れないでください。方法については、次のセクションを参照してください。

テーマの変更

Plymouth には以下のテーマが付属しています:

  1. Fade-in: 光る星がフェードイン・アウトするシンプルなテーマ。
  2. Glow: ブートプログレスのパイチャートが表示されロゴが浮かび上がるテーマ。
  3. Script: スクリプトサンプルプラグイン (ナイスな Arch ロゴテーマ)。
  4. Solar: 青い炎が上がる星と宇宙のテーマ。
  5. Spinner: ロードの歯車が表示されるシンプルなテーマ。
  6. Spinfinity: 画面の中央に無限マークが表示されるシンプルなテーマ。
  7. (Text: 3色のプログレスバーのテキストモードテーマ)
  8. (Details: 古臭いフォールバックテーマ)

AUR から他のテーマを追加でインストールすることもできます。plymouthAUR に依存しているパッケージを見てください。

インストールされているテーマは以下のコマンドで確認できます:

$ plymouth-set-default-theme -l

または:

$ ls /usr/share/plymouth/themes
details  glow    solar       spinner  tribar
fade-in  script  spinfinity  text

デフォルトでは spinner テーマが使われます。テーマは /etc/plymouth/plymouthd.conf を編集することで変更できます。例:

/etc/plymouth/plymouthd.conf
[Daemon]
Theme=spinner
ShowDelay=5

Ctrl+Alt+F2 を押してコンソールを切り替えて、root でログインしてから以下のコマンドを実行することで一時的にテーマを確認できます:

# plymouthd
# plymouth --show-splash

プレビューを終了するには Ctrl+Alt+F2 をまた押してから以下のコマンドを実行してください:

# plymouth --quit

テーマを変更したら、カーネルイメージを再生成する必要があります:

# plymouth-set-default-theme -R <theme>

再起動して変更を適用してください。

Hidpi

plymouthd.conf を編集

/etc/plymouth/plymouthd.conf
DeviceScale=<an-integer-scaling-factor>

編集が終わったら initrd を再構築します。

ヒントとテクニック

カーネルメッセージの表示

"Home" (または "Escape") キーを押すことで起動時のカーネルメッセージの表示を切り替えることができます。

spinner と BGRT テーマに Arch ロゴを追加

spinnerBGRT のテーマディレクトリに Arch ロゴを watermark.png という名前でコピーします。

# cp /usr/share/plymouth/arch-logo.png /usr/share/plymouth/themes/spinner/watermark.png

ロゴが中央に表示されていない場合、テーマの設定ファイルに次の行を追加します .plymouth で終わるファイル名 例:spinner.plymouth

WatermarkHorizontalAlignment=.5
WatermarkVerticalAlignment=.5

Arch ロゴを置き換えてカスタムテーマを作る

次のテーマは Plymouth によって提供されている Arch Linux ロゴ (/usr/share/plymouth/arch-logo.png) を使用します: fade-in, script, solar, spinfinity。他のロゴを使いたい場合、テーマの *.plymouth ファイルを編集してください (*.script も編集する必要があることもあります)。そしてロゴを置き換えたい画像に置き換えてください。テーマを新しく作成したらパッケージを作成する必要があります。/usr/share/plymouth に変更を加えてもパッケージのアップグレードで置き換わってしまう可能性があるためです。

テーマをインストール・選択したら、initrd イメージを再生成して新しいスプラッシュを使ってください。

ベンダーロゴの無効化

カーネルパラメータfbcon=nodefer を追加して下さい。

トラブルシューティング

plymouthd.conf を編集するたびに、 initrd を再構築する必要があります。

Plymouth をデバッグモードで実行する

カーネルパラメータに plymouth.debug を追加します。デバッグログが /var/log/plymouth-debug.log に保存されます、または plymouth.debug=<ファイルの名前> を使用します。

Plymouth ブートスプラッシュが表示されない

テーマがテキストではなくグラフィックである場合は、正しいグラフィックモジュールが /etc/mkinicpio.conf に追加されていることを確認してください。 /etc/plymouth/plymouthd.conf で、コンピューターの起動が速い場合は、 ShowDelay を 0 に変更します。 一部のコンピューターでは、グラフィックスの初期化が遅い場合があるため、 /etc/plymouth/ plymouthd.confDeviceTimeout を 8 に変更します。グラフィックスの初期化に必要な時間はカーネルのバージョンによって異なるため、ブートスプラッシュがそうでない場合は、 DeviceTimeout の増加が最初の試みとして適切です。カーネルの更新後に表示します。

Plymouth ブートスプラッシュがハング、フリーズ

バグが原因で udev フックが plymouth (git以外) をフリーズさせることがあります。その場合は、 systemd フックを使用してください。 参照

参照