1
0

Raspberry Pi Lite だと特に設定していなければこんなように起動メッセージが表示される。

image1.png

この画面をスプラッシュで隠してしまうお話。

環境

  • Raspberry Pi 3B
  • Raspberry Pi OS Lite (2024-07-04-raspios-bookworm-armhf-lite.img.xz)

インストール

raspi-config で設定してみます。

$ sudo raspi-config

image.png

1 System Options       Configure system settings      

から、
image.png

S6 Splash Screen     Choose graphical splash screen or text boot

を選んでも、

              
│ The splash screen is not installed so cannot be          │ 
│ activated                                                │ 
 There was an error running option S6 Splash Screen   

と出てきます。

plymouth が必要かな?

以下のようにインストールしたけれども、これだけではうまくいかなかった。次の rpd-plym-splash だけでいいみたい。

$ sudo apt install plymouth

rpd-plym-splash を更にインストールします。 先の plymouth はインストールしていなくても、ここで一緒にインストールされます。

$ sudo apt -y install rpd-plym-splash

raspi-config で設定できるようになりました。
image.png

再起動するとデフォルトのスプラッシュ画像が表示されます。
image.png

スプラッシュ画像を変更する

デフォルトテーマの設定はどこを見ればいいのかな?
調べ方はわかりませんでしたが、テーマは pix になっているようです。
/usr/share/plymouth/themes/pix/splash.png を入れ替えます。

入れ替えてリブートしてみると、終了時には変更したスプラッシュが表示されますが、起動時のスプラッシュはまだ変更にはなっていません。

起動時のスプラッシュを反映するには、以下のようにします。

$ sudo update-initramfs -u

Tips

起動してもスプラッシュが消えない

rc.local に終了しないプログラムを書いていました。

& を付加してプログラム終了を待たないようにします。

/boot/firmware/cmdline.txt

splash を有効にする前はこのようになってました。

console=serial0,115200 console=tty1 root=PARTUUID=e08d1729-02 rootfstype=ext4 fsck.repair=yes rootwait cfg80211.ieee80211_regdom=JP

raspi-config で splash を有効にした時。

console=serial0,115200 console=tty1 root=PARTUUID=e08d1729-02 rootfstype=ext4 fsck.repair=yes rootwait cfg80211.ieee80211_regdom=JP quiet splash plymouth.ignore-serial-consoles
                                           

quiet splash plymouth.ignore-serial-consoles

が増えています。

ログオンプロンプトを消す?

以下のログオンプロンプトが、スプラッシュが消えた後に表示されます。

Raspbian GNU/Linux 12 raspberrypi tty1

raspberrypi login:

これを消すには以下のようにすればいいかな?

$ sudo systemctl mask getty@tty1.service
Created symlink /etc/systemd/system/getty@tty1.service → /dev/null.

何故か動作が不安定になり、正常に起動せずリセットしたり、起動してもネットワークが動かなくなったりした。
当然、ネットワークが反応しなければ ssh でも入れない。
仕方なく元に戻して、

$ sudo systemctl unmask getty@tty1.service
Removed "/etc/systemd/system/getty@tty1.service".
$ sudo systemctl enable getty@tty1.service
Created symlink /etc/systemd/system/getty.target.wants/getty@tty1.service → /lib/systemd/system/getty@.service.

再度設定。

$ sudo systemctl mask getty@tty1
Created symlink /etc/systemd/system/getty@tty1.service → /dev/null.

今度はうまくいきました。 getty@tty1.service ではなくて getty@tty1 としなければいけなかったのかな?

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0