Synology DS720+ には通常のSATAのベイが2つと,M.2スロットが2つあります.
深く考えず,SATAとMVMeを組み合わせれば,4台のSSDを使えるだろうと思って購入しました.初めてのNASです.
結論
M.2に挿したSSDはキャッシュ専用になってしまうみたいで,Web UI (DiskStation Manager) からはボリュームを作成するときに選択できませんでした.
なので,NASにSSHでログインして自分で初期化する必要があるみたいです.
手順
NVMe接続のSSDは /dev/nvme0
または /dev/nvme1
として認識されるので,NASに入っている synopartition コマンドを使ってパーティションを作成して初期化します.以下のようにrootで実行.
synopartition --part /dev/nvme0n1 13
mdadm --create /dev/md2 --level=1 --raid-devices=1 --force /dev/nvme0n1p3
mkfs.btrfs -f /dev/md2
reboot
- synopartition のオプションの
13
はパーティションの構成で,synopartition --list
で一覧が表示されます.また,初期化済みのディスクがあれば,synopartition --check /dev/sata1
等で確認できるので同じやつを指定するのが無難そう (下の方に書いてありますが,小さいやつ選ぶほうが少し得かもしれません) -
md2
はまだ使ってないデバイスを適当に.synopartition を実行すると3つのパーティションが作成されますが,p3
がデータ領域のようです. - ファイルシステムは ext4 か btrfs が良いようです
- 再起動するとWebUIからストレージプールが見えるようになります
名前は「キャッシュ デバイス」のままですが,未初期化から「正常」になっています.
(最初の以外は,寄せ集めなのでメーカーも容量もバラバラですが)
ストレージプールにも追加されました.
試したことのメモ
とりあえずM.2スロットにSSDを挿す
キャッシュ専用になってしまう.
2つあるスロットどちらに挿してもボリュームの作成ボタンはグレーアウトしていて押せない.
手動でフォーマットしてマウント
fdiskでパーティション切って適当にフォーマットすれば使えるが,WebUIに出てこないので共有フォルダ作ったりするのが面倒.
ダメ元でmdadmでRAIDに追加したりしてみたけど,表示されないし,再起動時に自動でマウントされない.
synopartition コマンドでパーティションを作る
同じことで困ってる人いるだろうと思って探したら,Redditの投稿を見つけた.
synopartitionコマンドでパーティション作れば良いらしい.解決.
パーティションの構成
基本的に3つのパーティションが必要.データ領域以外はRootパーティションとSwap領域として使われるっぽい.
データ領域以外はNVMeだと使われないみたいなので,数GB無駄になるけど最近のストレージ事情からしたら微々たるサイズ(?)
synopartitionでパーティションを作るとき,Rootパーティションが小さくなる 9
にしても良さそう(1-Bayとなってるやつは使えませんでした)
DSMをNVMe SSDに入れる
本来はRootパーティションにDSMがインストールされて他のディスクとRAID1で同期されるようなので,NVMeも同様にすればSATAのディスクを全部抜いてもNASは動作するので便利な気がしました.
ただ,手動でRAID1に加えても再起動時にRAIDから外れてしまい,NVMe SSDだけではディスクが無いと言われて起動できず.
起動処理を眺めると,NASのフラッシュメモリ上のLinuxカーネルをロードして initrd に入っているスクリプトでストレージの設定をしていそう.
一通りカーネルモジュールのロードは終わってるし,NVMeも見えるはずだけど /usr/syno/bin/synodiskport -installable_disk_list
がSATAしか返さない実装になっているようで,NVMeだけでは起動しない.
このLinuxカーネルが入っている領域は /dev/synoboot2
からアクセスできるので変更できそうだけど,色々面倒そうなので断念.