あっきぃ日誌

ラズピッピブログのようなオタクブログのようななにか

Pi 5/Pi 500+に載せたM.2 NVMe SSDへのOSの書き込み方

Raspberry Pi Advent Calendar 2025 2日目です。

Raspberry Pi Advent Calendar 2025 - Adventar

Pi 5に搭載したM.2 NVMe SSDに書き込む場合、通常はM.2 HATからSSDを取り外して、USB変換アダプターとかに差し変えてPCに接続して書き込んでいます。が、いつの間にかSSDを取り外さなくても、Pi 5ごとUSBマスストレージに見せるブート環境がusbbootリポジトリに整備されていたようです。この方法はPi 500+でも有効なので、OS書き込みのためにキーボードを分解する必要がなくなってラクができます。また、CM5のeMMCもこの方法でPCにストレージとして認識させられます。

github.com

やりかた

https://github.com/raspberrypi/usbbootリポジトリをクローンして来て、READMEに従ってrpibootをコンパイルします。

そして、mass-storage-gadgetディレクトリに移動して、rpibootコマンドを実行します。

% cd mass-storage-gadget
mass-storage-gadget64 % sudo ../rpiboot -d .

するとPC側はRaspberry Piが接続されるのを待機する状態になります。

M.2 NVMe SSDを搭載したPi 5もしくはPi 500+の電源ポートとPCを、電源ボタンを押しながらUSB接続します。すると、待機していたrpibootコマンドがブートイメージをRaspberry Piに転送し始めます。

転送が終わると、M.2 NVMe SSDがPCで認識されます。こうなったらあとはいつも通りにRaspberry Pi ImagerなどでOSを書き込みます。

Pi 5とPi 500+のUSB-CポートをOTGポートとして使っているわけですが、USB2.0接続なので、転送速度はもちろん遅くなります。USB変換アダプターに差し替えたほうが転送自体は早いでしょうが、Pi 500+はキーボードを外すのがそれなりに面倒なので、この方法を覚えておくと良いかもしれません。

ネットワークインストーラーを使うのもアリ

あるいは、Pi 5とPi 500+のどちらでも使える方法として、ネットワークインストールがあります。有線ネットワークを接続した状態で、通電開始直後にShiftキーを長押しすると、インターネット経由でRaspberry Pi Imager相当のアプリケーションをダウンロードして起動できます。これもスピードはそれほど早くないのですが、用意するものがない点ではアリかもしれません。

www.raspberrypi.com

まとめ

そのPi 5に刺さってるSSD、いちいち外さなくても(ツールを用意していれば)イメージ流し込みができるぜ、という話でした。

Imagerでrpibootもカバーしてくれるようになったら激アツですけど、流石にそれは期待しすぎですね。