2019年5月20日月曜日

【Linux、RaspberryPi】起動時のコンソール表示を抑制する、ロゴを変更する

RaspberryPiを起動した時に、いっつも出てくる左上のロゴマーク
アップデート後から出るようになる各種サービスの起動結果コンソール表示
スプラッシュ画面ONにしたときに出てくるRaspberryPiのマーク


私的に使用している分には問題は特にないんですが、
将来的にRaspberryPiを使ったプロダクト機器を売り出したい…!
そうなったときに必要かな、と思ったので調べました。



______________________________________________

操作するファイル


幾つかの手順を踏めばLinux共通の操作として
起動時のコンソール表示や、起動時画面の差し替えを行うことができます。
この時に対象となるファイルは下記のファイルです。

/boot/cmdline.txt

ただ、これはRaspberryPiに入れているOSのRaspbianがそうらしいだけで、
OrangePiなどで使用しているArmbianでは下記のファイルになるようです。
記述方法も若干違うので注意です。

/boot/armbianEnv.txt


______________________________________________

起動時のロゴ表示を非表示にする


起動時に画面左上に表示されるRaspberryPiロゴを非表示にします。

/boot/cmdline.txt
にある、環境変数設定に下記の設定を追加します。

logo.nologo
quiet

「logo.nologo」により画面左上に表示されるRaspberryPiロゴが、
「quiet」によりロゴ表示時のコンソールが
非表示となります。

GUIにしている場合、起動後に暗い画面からそのまま
デスクトップ画面が起動するので、これだけでも大分印象が変わります。
ぐっとWindowsやMacの起動に近くなる感じです。


______________________________________________

起動時画面の変更(Plymouthについて)


RaspberryPiだと「設定」から「スプラッシュ画面の表示」をONにすると、
起動時にRaspberryPiのスプラッシュ画面が表示されますが、
この画面の差し替え方法です。

中身はRaspbianですが、UbuntuやLinuxMintの起動画面を出したりすることもできます。
独自のプロダクト製品として使う場合はここに商品名であったり、
会社ロゴなどが出るのでしょうか?

ここを差し替えるだけでも大分製品感が出てくると思います。


LinuxではPlymouthというソフトウェアでこれを制御しているらしく、
ここの設定を変更することで画面の差し替えが可能です。

差し替えする画面は「テーマ」という単位で管理されており、
画像の他、シェルスクリプト等の制御ファイルが含まれています。


オリジナルのテーマをゼロから作成するのはさすがに難しいので、
「テーマ」を公開しているページから基となる「テーマ」をダウンロードし、
そこに含まれる画像を差し替えて、起動時画面の差し替えを実現しましょう。

テーマを公開しているページはここです。
https://www.gnome-look.org/browse/cat/108/ord/latest/

幾つかダウンロードして試した感じだとこのテーマがおすすめ
https://www.gnome-look.org/p/1279093/



LinuxMintの起動画面ですね。
画像構成が非常に簡素になっており、
中央のロゴに2枚、プログレスの丸ポチに2枚となっているようです。
差し替える場合はこの画像を差し替えればいいというわけですね。


______________________________________________

起動時画面の変更(テーマのダウンロードと配置)


何はともあれテーマをダウンロードしましょう。
tarか何かで圧縮されていると思うので、ダウンロードしたら解凍しておきます。

解凍後はできたフォルダを以下の場所にコピーしてください。

/usr/share/plumouth/themes/

______________________________________________

起動時画面の変更(Plymouthテーマの変更)


下記コマンドを実行します

sudo plymouth-set-default-theme ...(テーマフォルダ名)

設定したら下記のコマンドを実行して、
設定が反映されていることを確認しておきましょう。
catとかでもいいです。

sudo leafpad /etc/plymouth/plymouthd.conf

設定の反映が確認出来たら、下記のコマンドを実行し、
rootファイルシステムを更新します。

sudo update-initramfs -u

「/boot/cmdline.txt」に下記のパラメータを追加します。

fbcon=map:10
splash
plymouth.ignore-serial-consoles


「fbcon=map:10」ではエラーコンソール表示等が非表示となります。
「splash」により、plymouthで設定したスプラッシュ画面が有効になります。
「plymouth.ignore-serial-consoles」により、コンソール表示が非表示になります。


ここまで行い、再起動します。
設定が成功していれば、再起動後にロゴやコンソールは非表示となり、
RaspberryPiでなく、設定したスプラッシュ画面が表示されるようになります。


ただ、サービスの起動状態等、起動時の処理の成否が出てくる部分なので、
開発時は出るようにしておいた方が何かと確認はしやすいかもしれません。


______________________________________________

起動時画面の変更(画像の差し替え)


このままだと、ダウンロードしたテーマのままの表示なので、
必要に応じて画像を差し替えます。

画像サイズとかがちょっと気になるところですが、
制御シェルで書かれたサイズで補正されるのか、
極端に大きかったりしなければ割とそのままで行けると思います。

まあ、近いサイズにしておくといいとは思います。


______________________________________________

最後に


これらを行うと、OS起動時のロゴ表示や起動画面を変更することができます。

あくまで見た目だけの問題なので、機能的にどうこう変わるわけではないのですが、
起動時に必ず目にする画面なので、気分を変えるのにはいいかもしれません。


見た目がダイレクトに変更されるところなので、
完成予定の製品ロゴが起動時に表示される。
そんなのを見るだけでも結構気分的に違うものです。


「こういう風に自分の製品は起動するんだな」っていうのがイメージできるだけでも
案外モチベーション的には違ってくるのではないでしょうか?
自分は結構気持ち上がりました。


見た目の割に思ったよりも簡単に設定できるので、
ちょっとおすすめしていきたい。

0 件のコメント:

コメントを投稿