OSS Fan ~OSSでLinuxサーバ構築~

作成日: 2021/05/03

OSSセットアップ

Raspberry Pi 4 Model Bのファームウェアをアップデート

トップページOSSセットアップ > Raspberry Pi 4 Model Bのファームウェアをアップデート
このエントリーをはてなブックマークに追加

目次

概要

 最近ラズパイ4で遊んでいますが、昔スマホなどに入れて使っていた余り物のmicroSDHCカードをシステムディスクとして 使用しているせいか、ディスクI/Oが遅くて色々と動作がモッサリしている気がします。 記事を読んでいるとラズパイ4にSSDをUSB接続して使用している人がいたので、真似してみようと考えました。 USB接続の機器からOSをブートできるのは比較的新しいファームウェアのようなので(←厳密には調べてません)、 一旦ファームウェアを最新化しようと思い実行したので手順を残しておきます。

構成

サーバ・ハードウェア構成

 ハードウェアはRaspberry Pi 4 Model Bのメモリ4GBモデルを使用しました。 ハードウェアスペックは以下のとおりです。 記載を省略していますが、モニタ、キーボード、マウスもラズパイに接続しています。

■ハードウェアスペック
項目内容
SoCBroadcom BCM2711
CPUARM Cortex-A72 1.5GHz
GPUBroadcom 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

参考にしたサイト