作業メモ的なやつ。
前に余ったデスクトップPCにLinuxを入れて、HDDをSambaで共有してファイルサーバーっぽくしてみたんだけど、あいにくあんまり使いやすくなかった。
市販のNASだったら設置してLAN繋いだらあとはブラウザでリモート管理する感じで済むんだけども、前に作ってみた環境だといちいちリモートデスクトップで入ってUbuntuのデスクトップを操作する感じになっちゃって。
RADEONでStable Diffusion動かしてみたりしてたから、無駄に消費電力も大きくってこまめに電源落としたい。
でもスリープさせてWake on LANで起きるかと思ったら安定して起きなかったり、逆に落としてるはずなのにいつのまにか立ち上がってたりとか、今ひとつ落ち着かない。
やっぱりNASみたいなものは、低消費電力にまとめて専用にしときたいねと。
で、家に余ってるものを見ると、できるんじゃないかと。
やってみたところ、とりあえず最低限の仮運用まではできて、ちゃんと使うにはもう少しパーツを足して組み替えて、というとこかな。
OS選定
LinuxやFreeBSDのバリアントとして、NASを簡単に構築できるOSがいくつかある。
OpenMediaVaultはシステムドライブをSSDにするのが非推奨……とうぃきぺにあったけど、どうも使ってる話を見ると別に気にしてなさそうにも見える。昔の話かな?
Linuxベースだからまだしもわかりやすいかもしれない。
TrueNAS Coreは、メモリーが最低8GB、推奨16GBと大きい。ちょっと要求がリッチらしい。
XigmaNASは、もう少しスペック要求が低いらしいので、これにする。
64bitのマルチコアCPUは必須。
メモリーは、最小2GBでなんとかスワップなしに使うこともできるらしい。メモリーがなけりゃディスクにスワップもできる。
ただ、ZFSファイルシステムがどうにもメモリ食いらしくて、これ使うなら8GBないと厳しいらしい。
機材準備
ストレージ周りは以下の物。
- LHR-4BNHEU3
- HDD
- WD Redと東芝DT01ACAの3TB
- 一応日立の500GB
で、PCはこのどっちか。
- ThinkPad L412
- Stream 11 r016TU
ThinkPad L412でチャレンジ
メモリー増設
どうせなら大容量メモリーでやる方がいいかな、と思うので、まずThinkPad L412の方でメモリーを増設してやってみる。
ただ、CPUがArrandaleのCore i3-380M、チップセットはHM55 Express。
この世代はメモリーの増設がちょっと難しくて、2Gbitのメモリーチップしか使えない。だから、4GBのSo-DIMMはチップが16枚載ってるやつがいる。
So-DIMMに16枚もぎっしりメモリー載せてるモジュールって、DDR3時代の早い段階で大容量メモリーにしておきたいところで買ってたものだから、流通量は少ない。
今となってはArrandaleとかまだ使う人も少ないから、ことさら16チップのSo-DIMMを分けて売ってくれてる通販サイトも、以前探したときは見つからなかった。
が、日本橋の中古屋を覗いてみたら、片面に8チップあり、どうも平置きで浮いてるように見えるのがあり、見せてもらったら当たり。1500円くらいで買えた。
XigmaNASのインストール
いきなりUSBメモリーからブートしいなくて悩んだけど、XigmaNASのダウンロードを間違えていた。
SOURCEFORGEのダウンロードページから、「Download Latest Version」をクリックして落ちてくるやつがCD-Rを焼いて使うためのバージョン。
これをRufusでUSBメモリーに書き込んでも、ちゃんと起動できないようだった。
ちゃんとフォルダを辿って、XigmaNAS-13.2.0.5 / 13.2.0.5.9876 フォルダにある XigmaNAS-x64-LiveUSB-MBR-13.2.0.5.9876.img.gz をダウンロードする。
これはBIOSで動いてるThinkPad L412だからMBRのを選んでるのであって、もっと新しいやつだとGPTの方を使うのが正しい。
インストール自体は、Prefferedとついてるのを選んでいった感じ。
FullかEmbeddedを選べるけど、これはEmbeddedを使うのが普通みたい。(Fullだとシステムストレージのアクセスが多くなって、SSDはともかくUSBメモリーとかで起動してると問題あるらしい)
システムストレージのパーティション形式は、PCが古いのでLegacy扱いのMBRでインストールした。
システムパーティションのサイズは標準で2GBというが、小さすぎて不安なので8GB取っておいた。意味はないかもしれない。
Swap領域も、一応2GB確保しておいた。
残った領域はデータパーティションとして確保される。これは後でSMBで共有指定できるが、パーティション番号で指定する。Swapを取ってたら3、取ってなければ2になると思われる。
内蔵ドライブから起動したら、初期パスワードはadmin / xigmanasでログオンしてまずネットワークだけ設定。
IPアドレスが初期設定で192.168.1.250になるけど、うちは192.168.10.xxxでDHCP振られるので設定変更した。自動設定があるから別にあれこれ控えてという必要はない。
IPは起動時に出るので、それを控えておいて別のPCからブラウザでアクセス。
ブラウザでログイン
システム→基本 から、「時間」でタイムゾーンとNTPサーバーを設定。
初期でpool.ntp.orgが入ってるから、これ使っておくのが無難。
それからWebUIはHTTPSアクセスに変更しておいていいかなと。証明書取ってるわけじゃないから安全じゃない接続にしかならないけれど。
システム→基本→パスワードでルートパスワードももちろん変更しておく。
WebUIのパスワードもルートパスワードと兼用であるらしい。
HDDの接続
外付けHDDはもちろんあとから増減できるものなので、この段階で接続。
が、ここで問題発覚で、eSATA接続したのだけど、4台入る外付けケースの1台目しか認識しない。
eSATAはSATAを外に引っ張り出すものだから、1つのポートに1台の機器しか繋がらない……のだけど、それじゃ不便だからポートマルチプライヤという機能が作られていた。
それが使えてないらしい。
XigmaNASの方ではちゃんと対応してるらしいから、単にポートが非対応なのかな。
拡張カードとして搭載するやつだと大体対応してるけど、オンボードの端子はだめなのが多い、という話も聞いた。
だめなものは仕方ないので、とりあえずUSB2.0に繋いだけど、これだと当然ボトルネックになって速度が厳しい。設定してアクセスしてみても25MB/sってとこ。厳しいな……。
ディスクの設定
ディスク→マネージメントを開くと、認識している物理ディスクの一覧が表示される。
出てなかったら、一度「ディスクのインポート」のところのインポートボタンを押すと出てくる。それでも出なけりゃ接続ミス。私はeSATAがBIOSで無効なの見落としてたり間抜けなミスをしていた。
で、まずドライブごとに設定を行う。
HDDスタンバイ時間を30分、電源管理をレベル1、Acoustic Levelを最大パフォーマンス、S.M.A.R.T.有効とした。
また、S.M.A.R.T.の設定で、電源モードをStandbyにしておく。こうしないとSMARTのチェックでスリープしてるディスクが起きてきちゃうっぽい。
それからフォーマット。
せっかくだからZFSを使えばいいかもなんだけど、今回はRAIDなど使わず個別ドライブで使いたいので、それぞれUFSにしておく。
ちょっとZFSが未知すぎて、RAID組むわけでもないのにメリットあるかとか判断しかねちゃったので一旦ペンド。多分シングルドライブでも有効そうには聞こえるけれど。
UFSで一通りフォーマットできたら、ディスク→マウントポイントから追加していく。
タイプは「ディスク」、ディスクで各ドライブを選び、パーティションタイプは「GPTパーティション」で大丈夫。パーティション番号「1」、ファイルシステムは「UFS」で最初から選ばれてると思う。
そしてマウントポイント名だけ、どのドライブかわかる名前をつけておく。
それと、システムドライブの空き領域もここでマウントできる。
ディスクにシステムSSDを選んで、パーティション番号3(Swapがなければ2)でマウントポイント名つければOK。
SMBを有効に
最後にSMBを有効化。
初期設定で、DOS Charsetが日本向けではなかったので、「CP932 (日本語 Shift-JIS)」にしておく。
で、SMB→共有から、先程マウントポイントで設定したところに、それぞれ共有を設定していく。
名前・コメントをつけて、パスでマウントポイントを選んで、ゲストアクセスを拒絶して、あとはデフォルトでいいかと思う。
SMBまで設定できれば、エクスプローラーでIPアドレスか\\xigmanasにアクセスすればフォルダが見える。
各共有フォルダに入ろうとしたら資格を聞かれるが、これはまあXigmaNAS側にユーザーアカウントを作っておいてそれで入るか、内々でしか使わないならアドミニ権限で入っちゃうか。
Windowsにローカルアカウントで入ってると、SMBアクセス時に同じID・パスワードで認証しようとするんだけど、マイクロソフトアカウントでログオンしてる場合はどうなるのかな。
USB3.0増設
ThinkPad L412にはExpressCard/34スロットがある。
となると、ExpressCard/34スロットにUSB3.0カードを追加するか。
どこで買うんだというと、AliExpressにあるし、Amazonにも同じものがある。
Amazonに頼んでみたら中国から発送されてたけど。
XigmaNASが認識してくれるようなものかはわからんのだが、格安で売られるようなものがそんな少量生産のマイナーチップとは思えず、XigmaNASは物が物だからストレージ周りのドライバーは大体持ってるだろうと期待。
今後
USB3.0で接続できそうなら、現在のUFSフォーマットはやめてやはりZFSにしたほうがよさそう。わざわざメモリーを8GBにした値打ちがない。
どうせならドライブ3つ入れてRAID Z1にしたりとか。
ドライブを買う場合、SMRはよくないらしいのでCMRで選ぶこと。
ノートPCをサーバーにしたら燃える、という話がよくネットにあるんだけれど、デスクトップPCと違いがあるとすれば基本的にバッテリーだろう。
10年とか前の古いバッテリーを常時充電しながら使うのは怖いので、実運用では外しちゃうかな。
hp Stream 11 (r016TU)で試す
Stream 11のCeleron N3840も、64bitのマルチコアCPUという条件は満たす。
メモリー2GBなのは、まあZFS使わなきゃいけるだろう。
かえってギリギリだから無駄がないとも言える。端末にするのは性能的に苦しいし。
色々不足もあるけど、まず有線LANがない。
WiFiは、インストール後にコンソールで設定する方法を見かけて少し触ってみたけど、そもそもWiFiアダプターを認識しないようだった。ドライバがないとかかな。私が入れ方をわからんだけか。
この時点でまあ話が終わってるのだけど、強いて言えばUSB3.0が1ポートあるから、ここにハブを入れて有線LANとHDDをつなぐ線はある。
有線1Gbps LANとHDDならどっちも1Gbps程度だろうし、USB3.0は5Gbpsあるから計算上は足りるはず……なんだけど、なんか頼りない気がする。
まあ気が向いたら買ってみるか。
ただ、Stream 11は分解しないとバッテリーを外せない。そんなに難しいわけじゃなさそうだけど、私のことだからどんなヘマするか。それに、分解をバッテリーついたままやるのは嫌だ。怖い。
かといって、どう考えても高品質とは思えない激安PCのバッテリーなんだから、やはり常時稼働はどうも……