Raspberry Pi 4 Model Bのファームウェアをアップデート
目次
概要
最近ラズパイ4で遊んでいますが、昔スマホなどに入れて使っていた余り物のmicroSDHCカードをシステムディスクとして 使用しているせいか、ディスクI/Oが遅くて色々と動作がモッサリしている気がします。 記事を読んでいるとラズパイ4にSSDをUSB接続して使用している人がいたので、真似してみようと考えました。 USB接続の機器からOSをブートできるのは比較的新しいファームウェアのようなので(←厳密には調べてません)、 一旦ファームウェアを最新化しようと思い実行したので手順を残しておきます。
構成
サーバ・ハードウェア構成
ハードウェアはRaspberry Pi 4 Model Bのメモリ4GBモデルを使用しました。 ハードウェアスペックは以下のとおりです。 記載を省略していますが、モニタ、キーボード、マウスもラズパイに接続しています。
項目 | 内容 |
---|---|
SoC | Broadcom BCM2711 |
CPU | ARM Cortex-A72 1.5GHz |
GPU | Broadcom VideoCore VI Dual Core 500MHz |
メモリ | LPDDR4 SDRAM 4GB |
有線ネットワーク | Gigabit Ethernet |
microSDカード(システム用) | microSDHCカード 32GB |
サーバ・ソフトウェア構成
OS
Raspbian GNU/Linux 10 (buster) ARM 32-bit ⇒ Laspberry Pi OS
環境構築
事前準備
ラズパイ4のファームウェアアップデート前にシステムを最新状態にしておきます。 必須の手順なのか理解できていませんが、新しくて悪いことはないと思うので念のため。
パッケージ一覧の更新
はじめにパッケージ一覧を更新します。
pi@raspberrypi:~ $ sudo apt update ヒット:1 http://archive.raspberrypi.org/debian buster InRelease ヒット:2 http://raspbian.raspberrypi.org/raspbian buster InRelease パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 パッケージはすべて最新です。
パッケージの更新
続いてパッケージの更新を行います。 OSの初回起動時に既に更新したばかりだったので、以下の表示例では特にアップグレードされたパッケージはありませんでした。
pi@raspberrypi:~ $ sudo apt full-upgrade パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 アップグレードパッケージを検出しています... 完了 アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 0 個。
Linuxの再起動
パッケージを更新したあとは念のためLinuxを再起動します。 (今回の例ではパッケージの更新がなかったので不要ですが、本来の手順としては必要かと)
pi@raspberrypi:~ $ shutdown -r 0
ファームウェアのアップデート
最新ファームウェアの有無を確認
はじめに今より新しい最新のファームウェアが存在するかを確認します。 以下のようにCURRENTとLATESTが異なっている場合は最新のファームウェアが存在しています。
pi@raspberrypi:~ $ rpi-eeprom-update
*** UPDATE AVAILABLE ***
BOOTLOADER: update available
CURRENT: 2020年 9月 3日 木曜日 12:11:43 UTC (1599135103)
LATEST: 2021年 4月 29日 木曜日 16:11:25 UTC (1619712685) ←より新しいファームウェアが存在する
RELEASE: default (/lib/firmware/raspberrypi/bootloader/default)
Use raspi-config to change the release.
VL805_FW: Dedicated VL805 EEPROM
VL805: up to date
CURRENT: 000138a1
LATEST: 000138a1
raspi-configでファームウェアのアップデート
ファームウェアのアップデートにはいくつか方法があるようですが、 今回はraspi-configコマンドでアップデートしました。 TeraTermでラズパイ4のRaspberry Pi OSへログインして操作しています。
pi@raspberrypi:~ $ sudo raspi-config
「Raspberry Pi Software Configuration Tool (raspi-config)」画面が表示されたら、 『6 Advanced Options』を選択します。
次の画面に進んだら、『A7 Bootloader Version』を選択します。
次の画面に進んだら、『E1 Latest』を選択します。
「Reset boot ROM to defaults?」と表示されたら『はい』を選択します。
「Boot ROM reset to defaults」と表示されたら『了解』を選択します。
raspi-configの最初の画面に戻ったら、『Finish』を選択します。
「Would you like to reboot now?」と表示されたら『はい』を選択します。
ここでLinuxが再起動されます。
ファームウェアの更新を確認
ファームウェアの更新前に実行したのと同じrpi-eeprom-updateコマンドを実行して確認します。 以下のようにCURRENTとLATESTの内容が同じになっていたら現在最新のファームウェアが適用されています。
pi@raspberrypi:~ $ rpi-eeprom-update
BOOTLOADER: up to date
CURRENT: 2021年 4月 29日 木曜日 16:11:25 UTC (1619712685) ←LATEST(最新)と同じバージョンが適用されている
LATEST: 2021年 4月 29日 木曜日 16:11:25 UTC (1619712685)
RELEASE: stable (/lib/firmware/raspberrypi/bootloader/stable)
Use raspi-config to change the release.
VL805_FW: Dedicated VL805 EEPROM
VL805: up to date
CURRENT: 000138a1
LATEST: 000138a1
補足
適用するファームウェアリリースの種類
ファームウェアには critical / stable / beta の3種類があるようで、 初期状態では stable が選択されています。 stableはベータテストが終わっている安定版のようなので、これをそのまま選択しています。 変更したい場合は以下のファイルを書き換えたうえでファームウェアのアップデートを実行すれば良いようですが今回は試していません。
pi@raspberrypi:~ $ cat /etc/default/rpi-eeprom-update FIRMWARE_RELEASE_STATUS="stable"
ファームウェアのバージョン確認
現在ラズパイ4に適用されているファームウェアのバージョンは以下のコマンドで確認できます。
pi@raspberrypi:~ $ vcgencmd bootloader_version Apr 29 2021 17:11:25 version c2f8c388c4ee37ad709ace403467d163e8dd91ce (release) timestamp 1619712685 update-time 1619975869 capabilities 0x0000001f