UGREEN NASync DXP4800 Plusに別OSを入れる
はじめに
FAQに
UGREEN NASに unraid または true nas をインストールできますか?
これらのデバイスにはサードパーティのシステムがインストールされている可能性がありますが、非公式にサポートされているシステムをインストールすると潜在的な問題が発生する恐れがあります。これらのサードパーティOSを仮想マシンにインストールすることをお勧めします。
と記載されているので自己責任で。
UGOSのバックアップ
前提としてDXP4800 PlusはM.2スロットが3つあり、2つはユーザーが自由に取り外しができる。 1つのM.2スロットはUGOS(UGREEN独自のOS)が入っていて、初期状態ではそこから起動する。 このUGOS用スロットを無視して、他の2スロットのどちらかにOSを入れて使う方法もあるが、せっかくなら3スロットすべて活用したいところ。 そこでOSを入れ替える前にUGOSを万が一のためにバックアップしておく。
バックアップ方法の選択肢
バックアップには以下の2通りがある。
UGOSが入っているSSDは128GBなので、容量に不満がある場合は物理的に交換するしかない。 自分はリセールバリューも考えて、論理的な方法でバックアップを取った。 ただし論理的な方法は、ミスると復元できなくなるリスクがあるためハイリスクになる。 不安な方は別ディスクに復元までの動作確認をしておくのがおすすめ。
実施した手順 (概要)
- NASに適当に1枚SSDを挿してUGOSを起動し、ストレージとして扱えるようにしておく
- UGOSのUIからSSHを有効化してSSHし、ddコマンドでシステムSSDのコピーを1で挿したSSDに保存
- 2で保存したコピーを手元のPCに保存
- 再起動中にCtrl+F12を連打してBIOSに入り、Watchdogを無効化 & 挿したSSDがブートディスクとして使えるように設定
- USB等から自分が挿したSSDにOSをインストール
- インストール完了後の再起動後にCtrl+F2を連打してブートディスク変更
- システム用SSDをddコマンドでコピーを取って何らかの方法で手元のPCに保存
最短経路で行くなら初手BIOSでWatchdog無効化 & USBブートで任意のOS起動からのシステムSSDを別のUSBに保存とかもできると思う。 事故ってUGOSが消えて復旧できないと地味に面倒なことになるので自分は安心感がある手順でやった。
事故ってしまった場合はサポートに泣きつくと何かしらの方法で何とかしてくれるっぽいコメントは海外のスレで見た。
システムディスクのコピー
やることは基本どのOSでも同じだと思うが、UGOSでやったときの手順。
まず lsblk でシステムディスクのパスを確認する。
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS zram0 252:0 0 963M 0 disk [SWAP] zram1 252:1 0 963M 0 disk [SWAP] zram2 252:2 0 963M 0 disk [SWAP] zram3 252:3 0 963M 0 disk [SWAP] nvme0n1 259:0 0 931.5G 0 disk ├─nvme0n1p1 259:12 0 15.3G 0 part └─nvme0n1p2 259:13 0 916.3G 0 part └─md1 9:1 0 916.1G 0 raid1 └─ug_55F4C6_1743584188_pool1-volume1 253:0 0 916.1G 0 lvm /home /volume1 nvme1n1 259:3 0 119.2G 0 disk ├─nvme1n1p1 259:4 0 256M 0 part /boot ├─nvme1n1p2 259:5 0 2G 0 part ├─nvme1n1p3 259:6 0 10M 0 part /mnt/factory ├─nvme1n1p4 259:7 0 2G 0 part /rom ├─nvme1n1p5 259:8 0 2G 0 part [SWAP] ├─nvme1n1p6 259:9 0 4G 0 part /ugreen ├─nvme1n1p7 259:10 0 109G 0 part /overlay └─nvme1n1p128 259:11 0 239K 0 part
パスがわかったらddコマンドでコピーを取る。 gzipで圧縮しながら取ったら大体3.4GB程度のサイズになった。
$ sudo dd if=/dev/nvme1n1 bs=64M status=progress conv=sync | gzip > /home/XXX/ugos.img.gz [sudo] password for XXX: 68585259008 bytes (69 GB, 64 GiB) copied, 504 s, 136 MB/s

システムディスクの復元
作ったバックアップを元に書き込むだけ。 システム用のSSDに対して書き込むのでシステム用のSSD以外で作業環境をブートさせておく必要がある。
gunzip -c ugos.img.gz > ugos.img dd if=ugos.img of=/dev/nvme1 bs=64M status=progress conv=sync,noerror
この手順で自分は復元してUGOSが起動できるところまで確認できているが、くれぐれも自己責任で。
LEDの調整
UGOS以外のOSではフロントパネルのLEDを制御してくれないので常にロード中っぽい光り方をする。 いい感じの光らせ方にするために GitHub - miskcoo/ugreen_leds_controller: An LED Controller for UGREEN's DX/DXP NAS Series を使わせてもらった。
Proxmox上でdebファイルからインストールしようとしたところ、linux-headersを入れろと言われるものの linux-headers-pve-6.8.12-9-pve パッケージがなくて困っていた。
パッケージを適当に眺めていたら proxmox-headers-6.8.12-9-pve を見つけて入れたらheaders周りは解決した。
またrootディレクトリでインストールしようとすると
N: Download is performed unsandboxed as root as file '/root/led-ugreen-dkms_0.3_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
というエラーが出たので chmod 644 しつつdebファイルを /tmp ディレクトリに移動させてインストールしてうまく動作した。
ざっくりまとめると以下のような感じ。
su - apt install -y proxmox-headers-6.8.12-9-pve wget https://github.com/miskcoo/ugreen_leds_controller/releases/download/v0.3/led-ugreen-dkms_0.3_amd64.deb wget https://github.com/miskcoo/ugreen_leds_controller/releases/download/v0.3/led-ugreen-utils_0.3_amd64.deb chmod 644 *.deb mv *.deb /tmp apt install -y /tmp/led-ugreen-dkms_0.3_amd64.deb apt install -y /tmp/led-ugreen-utils_0.3_amd64.deb
PVEじゃなくてもdebianベースなら頑張れば大体取り込めそうな気はした。

LEDの色は任意の色に調整可能だが、再起動するとデフォルトの色に戻ってしまうので手が空いたら永続化の方法を調べたい。
検証
測ったときの構成は以下。
OSごとの速度計測

UGOSはランダムI/Oがやや遅かった。PVE上のVMで動かすのも遅くなるが、大体それと同じぐらいの遅さなのでVMとして動いていたりするんだろうか。 sambaの設定はデフォルト設定で同じSSDを使って計測したので大体環境は同じはず。 ネイティブDebianが頭一つ早いが、たまたま早かっただけで平均的にはUbuntuと同じぐらいかなーとは思っている。 元々そこそこのスペックのマシンでPVEを立ち上げてNASを運用していたが、そちらと比べるとCPU性能が律速要因になっている印象を持った。
消費電力
prometheusの集計などもあるので真にアイドルな時間というものはないが、あんまり人がアクセスしない時間帯でも37w程度で思ったよりは電力を食っていた。 UGOSだと何らかの最適化が走ってるかもしれないが、海外のスレ見てもアイドル時で30w前半くらいっぽいのてそんなに差もなさそうな感触。 またLEDの調整を行うと定期的にディスクの状態を確認しに行くからか消費電力が平均的に上がる傾向があった。

CrystalDiskMarkを走らせたときの消費電力は大体ピークで69W程度だった。
13世代のi5でNASとして動かしてた時も35-50w以内で動いてた気はするので正直この消費電力は期待外れだったが、これ以上スペックが下がると10G転送がかなりきつそうなのでこの辺が10G NASとしては妥当なのかもしれない。
CPU性能
CrystalDiskMarkを走らせたときで以下のような感じ。


速攻でCPU温度が100度付近まで上がっているので冷却性能はあんまり良くないのかもしれない。 ただすぐに70度とかまで下がったりしているので本当か?という気持ちにはなる。
所感
速攻OS入れ替えているので説得力が低いが、UGOSはUI格好いいし、システムモニターもついてるし、使いやすそうでいいなーとは思った。 ただどこまでメンテし続けてくれるのかわからないのと、OS入れ替えるにしてもLinuxでSMBやNFS入れるのがシンプルザ・ベストかなということで入れ替えた。
ハードウェア面としては冷却性能や消費電力はやや期待外れではあったものの、10G NICでM.2 x3 + SATA x4な上に対応ポートが多彩で6万にしてはコスパ良いと思う。