ディスクを拡張 NVMe SSD編 - reComputer J1020

Seeed K.K.の松岡です。
reComputer Jetsonシリーズの内蔵eMMCは16GBで、開発のためにあれこれツールをインストールするとすぐにストレージ不足に陥ります。
そこで、reComputer J1020にM.2接続NVMe SSDを追加して、OS(rootfs)をNVMe SSDから起動するよう変更しようと思います。

用意したもの

NVMe SSDを接続できるreComputer Jetsonシリーズは、Jetson A206キャリアボードを採用したJ1020, J2011, J2012です。J1010は不可。ここでは、reComputer J1020を用意しました。
NVMe SSDは、、、どれ選んだら良いんだろう?市場動向全く分からないです😅。ネットで比較記事を読み漁った結果、お手頃価格で速いらしい、Samsung SSD 980の250GBモデルを使うことにしました。
また、NVMe SSDを固定するネジがどちらにも同封されていなかったので、追加でネジとワッシャーを用意しました。

トラス小ねじとワッシャー:

NVMe SSDを取り付け

NVMe SSDは、reComputer J1020のキャリアボードの裏面に取り付けます。
ケースの蓋を開けて、キャリアボードを固定しているネジ4本を外します。キャリアボードを取り出したら、裏のM.2 KEY MのスロットにNVMe SSDを差し込んで、ネジとワッシャーで固定します。

OSをクリーンインストール

作業前に、下記記事を参考にOSをeMMCへクリーンインストールしておきます。記事はreComputer J1010で作業していますが、reComputer J1020でも同じ手順でした。

lab.seeed.co.jp

NVMe SSDをフォーマット

NVMe SSDをフォーマットして、パーティションを作成します。

先ずはフォーマットです。GUIツール「Disk」でNVMe SSDをフォーマットしますが、その際、PartitioningはGPTを選んでください。

次はパーティション作成です。TypeはExt4を選んでください。Volume Nameはどんな名前でも大丈夫です。

作成したパーティションのDeviceが/dev/nvme0n1p1で、ContentsがExt4と表示されていれば成功です。

OS(rootfs)をNVMe SSDへコピー

OS(rootfs)の中身をNVMe SSDへコピーします。
GitHubにスクリプトcopy-rootfs-ssd.shが用意されています。git cloneして、このスクリプトを実行すればOKです。(NVMe SSDを冷却しましょう!>後記)

$ git clone https://github.com/limengdu/rootOnNVMe.git
$ cd rootOnNVMe
$ ./copy-rootfs-ssd.sh

NVMe SSDから起動

これが最後の作業です。
スクリプトsetup-service.shを実行して、起動時にNVMe SSDのOS(rootfs)を使用するよう設定後、再起動します。(NVMe SSDを冷却しましょう!>後記)

$ ./setup-service.sh
$ sudo reboot

結果

やったー。ストレージの空きが200GBオーバーになりました!!

$ df -k .
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/nvme0n1p1 239314556 5265608 221822696   3% /

要注意! NVMe SSDの温度

ちょこっと動かすだけでも、NVMe SSDのコントローラー部分がかなり高温になります。温度を測定してみたところ、すぐに50℃オーバー。連続して動かすと、60℃を越えてOSごと死亡、、、。
なんらかの手段で冷却が必須です。わたしはハンディ扇風機を使っています。(もうちょっとイイ感じにしたい)

要注意! eMMC使用

今回の設定は、eMMCにあるOSが起動後、NVMe SSDのrootfsに切り替えるというものです。
eMMCのrootfsを使わない仕掛けではありません。

参考リンク

変更履歴

日付 変更者 変更内容
2022/6/13 松岡 作成