Raspberry Pi 5に公式SSDを接続して起動ディスクに設定する手順まとめ&SSDとmicroSDカードの速度比較もあり

Raspberry Pi公式SSD「Raspberry Pi SSD」が2024年10月23日に登場しました。Raspberry Pi開発チームからRaspberry Pi SSDの256GBモデルが届いたので、実際に使って「転送速度」「Raspberry Pi 5への接続手順」などを確かめてみました。
Buy a Raspberry Pi SSD - Raspberry Pi
https://www.raspberrypi.com/products/ssd/
https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#nvme-ssd-boot
・目次
◆1:公式SSDの見た目や搭載チップをチェック
◆2:Windows PCでベンチマークテスト
◆3:Raspberry Pi 5に装着してOSインストール
◆4:公式SSDを起動ディスクに設定
◆5:公式SSDと公式microSDカードの速度比較
◆6:公式SSDとサードパーティー製SSDの速度比較
◆1:公式SSDの見た目や搭載チップをチェック
これがRaspberry Pi SSDの256GBモデルです。

シールをはがすと、メモリチップが1枚現れました。

メモリチップ表面の印字はこんな感じ。

裏面には各種認証マークがプリントされています。

また、裏面上部には「Samsung」「MZ9LQ1T0HBL0」と刻印されていました。

◆2:Windows PCでベンチマークテスト
まずは、Windows PCに組み込んでCrystalDiskInfoでストレージ情報を表示してみました。PCIe 3.0に対応していることが分かります。

CrystalDiskMarkでベンチマークを実行した結果が以下。シーケンシャルリードは2059.23MB/s、シーケンシャルライトは1116.15MB/s、ランダムリードは596.12MB/s、ランダムライトは478.25MB/sでした。

書き込みキャッシュを無効化すると、シーケンシャルリードは1966.85MB/s、シーケンシャルライトは526.74MB/s、ランダムリードは742.63MB/s、ランダムライトは153.19MB/sとなりました。

◆3:Raspberry Pi 5に装着してOSインストール
Raspberry Pi SSDにOSをインストールする方法はいろいろありますが、今回は「OSインストール済みのmicroSDカードの内容を丸ごとコピーする」という方法を採用します。なお、microSDカードは「Raspberry Pi SD Cards」の32GBモデルを使います。

Raspberry Pi 5にRaspberry Pi M.2 HAT+を装着し、その上にRaspberry Pi SSDを取り付けます。

続いて、OSインストール済みのmicroSDカードを挿入して電源ON。

メニュー内の「Accessories」カテゴリにある「SD Card Copier」を起動します。

「Copy From Device(コピー元デバイス)」にmicroSDカード、「Copy to Device(コピー先デバイス)」にRaspberry Pi SSDを指定して「New Partition UUIDs」にチェックを入れてから「Start」をクリック。

「コピー先のデータが全部消える」という警告が表示されたら「Yes」をクリック。

コピーが完了したらSD Card Copierを閉じます。

正しくコピーできているか確認するために、以下のコマンドを実行。
lsblk
実行結果はこんな感じ。同じパーティション構成のストレージが表示されればOKです。
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
mmcblk0 179:0 0 29.5G 0 disk
├─mmcblk0p1 179:1 0 512M 0 part /boot/firmware
└─mmcblk0p2 179:2 0 29G 0 part /
nvme0n1 259:0 0 238.5G 0 disk
├─nvme0n1p1 259:3 0 512M 0 part
└─nvme0n1p2 259:4 0 238G 0 part
◆4:公式SSDを起動ディスクに設定
次に、Raspberry Pi SSDからOSを起動できるようにRaspberry Pi 5のファームウェア設定を書き換えます。まずはファームウェアのバージョンを確認。
sudo rpi-eeprom-update
ファームウェアが2023年12月6日以降のバージョンならアップデートは不要です。今回は2024年9月23日のバージョンがインストールされていたので、そのまま作業を進めます。
BOOTLOADER: up to date
CURRENT: Mon 23 Sep 13:02:56 UTC 2024 (1727096576)
LATEST: Mon 23 Sep 13:02:56 UTC 2024 (1727096576)
RELEASE: default (/lib/firmware/raspberrypi/bootloader-2712/default)
Use raspi-config to change the release.
ブートローダーを最新のものに更新するために、以下のコマンドを実行してEEPROMの設定画面を起動します。
sudo raspi-config
以下の画面が表示されたら「Advanced Options」を選択。

「Bootloader Version」を選択。

「Latest」を選択。

「Yes」を選択。

EEPROMが書き換わったら「OK」を選択。

「Finish」を選択。

再起動するか尋ねられるので、「Yes」を選択して再起動します。

これでSSDからの起動が可能になりましたが、この状態だと「SSDとmicroSDが存在する場合、microSDカードから起動する」という動作になるので、SSDを優先するように設定を変更します。まず、以下のコマンドを実行。
sudo raspi-config
「Advanced Options」を選択。

「Boot Order」を選択。

「NVMe/USB Boot」を選択。

「OK」を選択。

「Finish」を選択。

最後に「Yes」を選択して再起動します。

再起動したら、SSDから起動できているか確認するために以下のコマンドを実行。
df -h
結果はこんな感じ。ルートディレクトリに234Gのストレージが割り当てられています。つまり、Raspberry Pi SSDの256GBモデルから起動できているというわけです。
Filesystem Size Used Avail Use% Mounted on
udev 1.9G 0 1.9G 0% /dev
tmpfs 405M 6.2M 398M 2% /run
/dev/nvme0n1p2 234G 4.7G 217G 3% /
tmpfs 2.0G 368K 2.0G 1% /dev/shm
tmpfs 5.0M 48K 5.0M 1% /run/lock
/dev/nvme0n1p1 511M 76M 436M 15% /boot/firmware
tmpfs 405M 176K 404M 1% /run/user/1000
/dev/mmcblk0p2 29G 4.7G 23G 18% /media/gigazine/rootfs
/dev/mmcblk0p1 510M 76M 435M 15% /media/gigazine/bootfs
◆5:公式SSDと公式microSDカードの速度比較
Raspberry Pi 5にRaspberry Pi SSDを接続した際の転送速度を測定するために、James A. Chambers氏が公開しているベンチマークツールを実行してみます。なお、今回使っているRaspberry Pi 5はRAM容量4GBのモデルで空冷ファンは装着していません。
sudo curl https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh | sudo bash
まず、Raspberry Pi SD Cardsの32GBモデルでの測定結果は以下。Raspberry Pi SD Cardsの転送速度は高速化に寄与する「Command Queueing」という機能を有効化した状態で測定しています。
テストRaspberry Pi SD Cards 32GBHDParm Disk Read90.11 MB/sHDParm Cached Disk Read90.36 MB/sDD Disk Write33.2 MB/sFIO 4k random read6030 IOPS (24122 KB/s)FIO 4k random write2584 IOPS (10338 KB/s)IOZone 4k read24043 KB/sIOZone 4k write8179 KB/sIOZone 4k random read17279 KB/sIOZone 4k random write8386 KB/sスコア2691
そして、Raspberry Pi SSDの256GBモデルの測定結果は以下の通り。microSDカードよりも圧倒的に高速です。
テストRaspberry Pi SSD 256GB (PCIe 2.0)HDParm Disk Read419.43 MB/sHDParm Cached Disk Read412.87 MB/sDD Disk Write337 MB/sFIO 4k random read106113 IOPS (424455 KB/s)FIO 4k random write88275 IOPS (353103 KB/s)IOZone 4k read183361 KB/sIOZone 4k write145019 KB/sIOZone 4k random read56887 KB/sIOZone 4k random write155532 KB/sスコア37635
Raspberry Pi 5は標準状態だとPCIe 2.0で動作しますが、設定を変更してPCIe 3.0で動作させることも可能。Raspberry Pi SSDはPCIe 3.0に対応しているので、Raspberry Pi 5の設定を変更してみます。
まず、「/boot/firmware/config.txt」に以下の行を追加。
dtparam=pciex1_gen=3
後は、再起動するだけでOK。
sudo reboot
PCIe 3.0で動作させた際のベンチマーク結果はこんな感じ。
テストRaspberry Pi SSD 256GB (PCIe 3.0)HDParm Disk Read804.39 MB/sHDParm Cached Disk Read741.48 MB/sDD Disk Write550 MB/sFIO 4k random read200784 IOPS (803137 KB/s)FIO 4k random write94377 IOPS (377511 KB/s)IOZone 4k read225633 KB/sIOZone 4k write174981 KB/sIOZone 4k random read62335 KB/sIOZone 4k random write194996 KB/sスコア49100
「Raspberry Pi SD Cards 32GB」「Raspberry Pi SSD 256GB (PCIe 2.0)」「Raspberry Pi SSD 256GB (PCIe 3.0)」のベンチマーク結果を並べたグラフが以下。Raspberry Pi SSDはmicroSDカードと比べて圧倒的に高速で、PCIe 3.0で動作させることでさらなる高速化が可能です。

ストレージベンチマークツール「fio」でも「Raspberry Pi SD Cards 32GB (Command Queueing有効)」「Raspberry Pi SD Cards 32GB (Command Queueing無効)」「Raspberry Pi SSD 256GB (PCIe 2.0)」「Raspberry Pi SSD 256GB (PCIe 3.0)」の速度を測定してみました。測定時のブロックサイズは4kです。画像をクリックすると大きいグラフを確認できます。

◆6:公式SSDとサードパーティー製SSDの速度比較
「Raspberry Pi SD Cards 32GB」と「Raspberry Pi SSD 256GB」のベンチマーク結果を過去に測定していた「SUNEAST ULTIMATE PRO 64GB」「Solidigm P41 Plus 512GB」「Samsung 950 PRO 256GB」「WD Black SN750」のベンチマーク結果と並べたグラフが以下。Raspberry Pi SD CardsはCommand Queueing有効、SSDはすべてPCIe 3.0で動作させています。画像をクリックすると大きいグラフを確認できます。

Raspberry Pi SSD 256GBは30ドル(約4620円)と比較的安価ながら、サードパーティー製SSDと同等以上の速度で動作可能。さらに、全長が短いためRaspberry Pi M.2 HAT+にピッタリ装着できます。特にデメリットも見当たらないので、Raspberry Pi 5用のSSDを探しているならRaspberry Pi SSDを入手するのがオススメです。
