†PCうそつき講座†
作成開始日 2022.12.19
最終更新日 2024.01.24
ASUS J1900I-Cベースのキューブ型省電力ファイルサーバ。今までのoptiplexサーバ(Atom 330)の速度・容量に限界を感じ始めていたので、2023年初頭からの運用を目指してアセンブル。2022年12月に基本システムを作成、2023年初頭に6TB HDDを搭載して完成形に致る。黒くてズングリしていて可愛いので「micras」と命名。
公式の英語綴りは「MICLAS」らしい。しかし、カプセル怪獣なので「ミクロ(micro)」に引っ掛けて「micras」とする方がそれっぽい。
完成を喜んでいたのも束の間、僅か2箇月でHDDがクラッシュして、甚大な被害を受けたorz 前兆なしの突然のクラッシュだったので、バックアップを取っていないファイルも幾つかあったが、実害以上にメンタルなダメージが大きい。原因は不明だが、可能性としてはACアダプタの内蔵が考えられる−−ノイズで基板をやられたのではないか?
SPEC | |
---|---|
M/B | ASUS J1900I-C(2014年5月発売) |
Case | Century CF-A8989BK150 |
CPU | Celeron J1900 4c/4t 2GHz-2.42GHz/10w pm=1800 |
RAM | 4GB:2GBx2 SO-DIMM DDR3L-1333 (*1) |
HDD |
@2.5"SSD:28GB FScompass MA619GXBDCC6 (Groovy GN-MT003S) A3.5"HDD:4TB/SATA600:Seagate ST4000DM000 (ext4) A3.5"HDD:6TB WD RED WD60EFRX (SATA 600) (Groovy GR-MT001B) A2TB/3.5"/SATA600:Seagate BarraCuda ST2000DM005 (ntfs) |
LAN | Realtek RTL8111G Gigabit ※8169用ドライバで動くらしい |
AUD | Realtek ALC887-VD |
USB | USB3.1x1 + USB2.0x6 (*5) |
PWR | PicoBox+120w ACアダプタ(筐体内蔵)(*2) |
FAN | 8cm×25mm GELIDFN-PX08-21 [SILENT 8 PWM] 4pin/0.1A (*3) |
OS | Debian 8.11.0 64bit LXDE (2015-2018) |
電源スペースには多少余裕があるので、Flex-ATX電源が載らない事もなさそうだが、Flex-ATX電源自体がレア品でメチャ割高。それなら、汎用電源が使えるケースに買い替える方が賢い。また、TFXもサイズ的にはギリギリ可能性があったが、電源コネクタの向きの関係で電源スペースに収納は困難と判断した。コネクタの向きだけなら分解で何とか…とも思ったが。
以前、SN68SG2をこのPicoBox+60w ACアダプタで動かそうとしたことがあるが、容量不足で失敗した。VIAのEdenならば問題なくブートしたので、故障等ではなく、単純な容量不足だったようだ。ならば、今度は120wのACアダプタを…と言うことでネットで2000円弱で入手。PicoBox本体が2000円だったので、合計で4000円ほど。金額的には微妙なところだが…
ここでネックになったのが電圧。ノートPCやミニPC用のACアダプタならば90wクラスも持っているのだが全て19v。12vで60wよりも大きいってのはけっこう特殊。ただ、結果論だが、本機は全消費電力が20wを切っており、60wアダプタでも使用可能だったかも知れない。
ところが、このACアダプタは元の電源ユニットとほぼ同サイズで、ケース内の電源スペースに収納可能。しかも、このケースは背面のACコネクタから電源スペースまでコードを引っ張ってくる構造になっているので、これにACアダプタを直結すれば、加工なしで使用できる。ただし、ACアダプタは家庭用コンセントの2ピンのプラグだが、ケースの引き込み電源コードは3ピンなので、そのままでは接続不能。ここはパーツ箱の片隅で見つけた変換コードで対応。
ところで、PCの電源ユニット等に使用される縦ブレード3本のプラグは、何と言う名称なんだろう?単に「3ピンプラグ」だと、家庭用コンセントにアース用の丸棒を加えた3ピンプラグと区別が付かない。「ミッキー型」みたいな愛称もないのか?「サンソー(三索)型」はどう?
ともあれ、これでACアダプタ内蔵式の無音電源が完成した。あとは、耐久性と安定性。まあ、適当なブラケットが出てきたら、やっぱりACアダプタは外に出したいとは思っているが…
【重要】確証があるわけではないが、このACアダプタの内蔵が、悲劇的な結果を招いたのではないかと考えている。ACアダプタから発生したノイズが、至近距離からHDDの基板を直撃して、電子系をオシャカにしたのではないだろうか?いや、判らんが…とりあえず、ACアダプタは外に出し、HDDをWD RED 2TBに交換して使用しているが、3ヵ月以上特に問題なく動作している。
ACアダプタ内蔵状態で使用した際には、WD RED 2TBにも軽微ながらファイル破損が起きていた。6TBの方だけなら、たまたま不良ドライブだったという判断も可能だが、似たような環境で使用したHDD2台にトラブルが発生したとなると、共通の原因を考えざるをえない。ただし、Seagateの2TBにはトラブルが発生していない。Seagateはノイズに強いのか、単に物理的な距離の問題か不明だが、リスクを犯して検証する気にもならないので−−経験則として、@ACアダプタは内蔵するな、AWDよりもSeageteの方がノイズに強い、という事にしておこう。
6TB HDDは不人気のせいか(?)コスパが良い。4TBよりも少し高いだけ。中古でも、人気のある8TBは価格が高騰しやすいが、6TBはWD REDでも8000円前後で入手可能(2023.01現在)。
【追記】その後、6TB HDDはクラッシュしてアクセス不能になったので、現在ではWD RED 2TBを使用している。
ファイルシステムでもう一つ重要なのは、日本語ファイル名の文字化けの問題。ntfsでも発症することがあるそうだが、fat32はかなり重篤なトラブルが発生する。特にPuppyで書き込んだファイル名は、マウント時にiocharsetを指定しても文字化けを解消できない事がある。
SSDに6GBのswapを設定した。インストーラのデフォルト設定だと1.2GBとなるが(SSDが28GBしかないので)、ハイバネーションを考えるとRAM容量の1.5倍程度は欲しい。実際にハイバネを使うかどうかは別として、事前に余裕を持たせておく方が賢明。後からスワップの大きさを変更するのはけっこう面倒臭い。区画サイズに余裕があれば別だが、sda1を縮小しないとスワップが拡張できない場合は、ライブCDなどからブートしてGPartedで弄る必要がある。
Debian 8のライブCDにGPartedは入っていないので、別途インストールする必要がある。…と言うか、ライブCDでもアプリがインストール可能なんだ…(試したのはライブUSB)
そこで、ドライブ名として使用可能な「ラベル」を設定しておくとよい。短くてわかり易いラベル(例えば「storage1」とか)を付けておけば、一目で何のドライブかが判る。sambaの共有設定にもこのラベル名は使用可能。「ラベル」を設定するには、GPartedを起動して、当該ドライブをアンマウントしたのち、右クリックして[ラベル(L)]を選べばよい。
なのだが、実はこれには落とし穴があって、fstabに登録されたドライブが接続されていない場合、システム自体が起動しなくなってしまう。ストレージ用HDDは交換する可能性も十分にあるので、迂闊にfstabに登録してしまうのは考え物。脱着前提のUSB HDDドライブなども同様。システム起動時に自動マウントする方法は他にもあるのでそちらを検討すること(mountコマンドを自動実行に登録するのが簡単かと)。
なお、この方法はLXDE環境の場合にのみ有効(だと思う)。一般的には「mkdir -m 1777 /media/root/storage1/.Trash」の要領で、「ごみ箱」ディレクトリを明示的に作成する必要があるようだ。その場合も、ファイラー側で「ごみ箱」を使用するように設定されていなければ意味がない。
tune2fs -m 1 /dev/sdb1
これで予約領域が1%(1TBにつき10GB)になる。「-m 0」として、予約領域をゼロにしても良いのだが、それだとパフォーマンスに影響があるとかないとか…実はデフラグに使っているとかいないとか…と言うことで、1%にした。
この場合「/media/root/storage1/public」というのが、「public」フォルダのマウント位置になるので、「media」「root」「storage1」「public」の各フォルダのアクセス権が適切に設定されている必要がある。Windowsの感覚だとつい見落としがち。
容量 | ストレージ | UEFI表示時 | アイドル時 | CPU温度 | HDD温度 | 備 考 |
---|---|---|---|---|---|---|
-- | 2.5"SSD | 14w | 10w | -- | -- | 温度は計測しなかった |
2TB | 3.5"HDD/2TB | 18w | 14〜15w | 38〜46℃ | 29〜32℃ | HDDはWD Red |
4TB | 3.5"HDD/2TB + 3.5"HDD/2TB | 20〜21w | 16〜17w | 37〜47℃ | @28〜34℃ A29〜36℃ | @はWD Red 2TB AはBarraCuda 2TB |
6TB | 2.5"SSD + 3.5"HDD/6TB | -- | 15〜17w | 33〜46℃ | @27〜38℃ A29〜35℃ | @はSSD AはWD RED 6TB |
8TB | 3.5"HDD/2TB + 3.5"HDD/6TB | -- | 18〜19w | -- | -- -- | @はWD Red 2TB AはWD Red 6TB |
SSDでの計測時にはケース付属ファンを5v化して使用していたが、HDDでの計測時にはGELIDファンに換装している。5v化ファン→GELIDファンによって、CPU温度が数度ほど下がった。
SSD+6TB HDDのシステムでは、SSDの温度が予想外に高くなる。そもそも高発熱のSSDなのか、ジオメトリカルな問題か(SSDとHDDは密着している)、現状では判断困難。
温度計測にはpsensorsを使用している。LXPanelにも温度センサはあるのだが、これがなぜか「temp1」という名称の正体不明のセンサの値しか表示しない。しかも、このtemp1は常時26.8℃固定で、センサの役目をまったく果たしていない。温度センサを手動で指定できる仕様になっているのだが、何をどうやって指定するのか全く不明(計測結果のファイルのパスで良いかのと思ったのだが…違うみたい)。ネットで調べても、困っている人が多いという事しか判らないorz消費電力を16wとすると12kWh/月;現状1kWhあたり@40円くらいなので、ざっと月500円。完全SSD化しても月300円くらいは掛かるだろう。プーチン早く死なないかな…
なお、敢えてCPUファンのコネクタに接続した。UEFIに表示される温度センサーはCPUのみで、ケースの温度センサーの値が見当たらない。ケースファンの制御基準が判らないので、制御が確実なCPUファンのコネクタに装着した。ファンの定量的な効果は不明だが、実感としては、静音性を保ったまま3〜5℃くらい下がったかな?と言う感じ。滅多に50℃を超えなくなった。
パッケージ名 | 機 能 |
gparted | GPartedディスク管理(2TB超GPT対応、区画のリサイズ可) |
puvucontrol | PulseAudio音量調節 |
hardinfo | System Profile... 各種ハードウェア/OS情報 |
smartmontools | HDD/SSDのS.M.A.R.T情報の表示 |
anthy+scim | 日本語IME Anthy(*1)、要再起動 |
zip | 標準では入っていない!(*2)、日本語ファイル名の文字化け注意 |
(*1) Anthy+scimをインストールすると、pcmanfmでキー入力によるファイル検索ができなくなる。例えば、[f]を押しても「f」で始まる名前のファイルにフォーカスが移動しなくなる。
(*2) Xarchiverの標準はbz2なので圧縮のみで書庫機能がない。tarやzipなどのアーカイブを作成するときは、作成ダイアログの左下のドロップダウンリストから選ぶ。
バイナリ(deb:) http://ftp.jp.debian.org/debian jessie main contrib non-freeこれで一応使用可能だが、公開鍵が期限切れと表示される。実害はないようだが、対処はしたい(apt updateで解決可能?)。
auto eth0←IF名は環境に合わせて変更する iface eth0 inet static address 192.168.1.xx netmask 255.255.255.0 gateway 192.168.1.1 dns-servers 8.8.8.8←当面、実験段階なので…
接 続 | ext4 | ntfs | 備 考 |
USB 3.0 | 140MB/s | 30MB/s | ntfs→ext4/ntfs→ntfs |
SATA | 120MB/s | 33MB/s | ext4→ext4/ext4→ntfs |
Gigabit | 110MB/s | 40MB/s | eleking(ntfs)→micras(ext4/ntfs) |
この測定値から言えることは、どの接続方式でもext4ならば100MB/s以上出るが、ntfsは30〜40MB/sしか出ない。したがって、接続方法は任意に選んで良いが、ファイルシステムはext4必須。ntfsのデータディスクをそのまま取り付けるのは、パフォーマンス的に不利。
ntfsもWin7環境であれば100MB/s以上出る。ただし、ウチのelekingのeSATA HDDスタンドはPCIのeSATAボード経由なのでr/w=85/65MBpsが限界。
なお、以上は全て3.5"HDD(WD Red/BarraCuda)を使用した測定値。2.5"HDDの場合は半分くらいの速度になる。また、USB 3.xは実測でも200MB/s以上出る事があるそうだが、ウチの環境では実現できていない。内蔵SATAもこの程度か…?Gigabit Ethernetが100MB/s以上(ほぼ理論値)出ているので、ファイルサーバとしては何の問題もないが。
ドライブ | ファイルシステム | 文字化け |
3.5"USB HDD | NTFS | 文字化け発生せず |
2.5"USB HDD | FAT32 | 文字化け発生、Puppy以外では正常表示不可能 |
NTFS/FAT32ともにPuppy(LxPup Tahr)で使用していたものだが、なぜかFAT32の方だけ、文字化けが修正できない。どうも、codepageが932じゃなくて437になっているとか?…ちょっと特殊な問題が隠れている感じだ。いろいろ試してはみたが、LxPup Tahr以外では正常な表示ができなかった。USBでもSATAでもダメだった。結局、再度Puppyを起動してネットワーク経由でコピーした。
USB 3.0接続のHDDスタンドに旧HDDを接続してデータをコピー。1TBあたり3時間くらい掛かった。ざっくり、100MB/sと言ったところか。2TBで6時間(連続コピーしたわけではないが)。この計算だと、次回(4TB→8TB)には12時間掛かることになりそうだ(@_@) ちょっと考え直そう…
なお、HDDの消費電力は従来の2倍程度になった。測定はしていないが、多分2〜3wくらい増えたと思う(月額で数十円程度)。その点がちょっとな…Barracudaの現行モデルにすべきだったか?
その後、minillaのOSをDebianに変更したところ、Win7のようなエラーでめためたになる現象は発生しなくなった(つか、表示を自動更新していないだけ、という説もあるが)。しかし、USB HDDが寝ているとフリーズ状態になる。これは原理上免れ得ない。
そこで、サーバをoptiplexからmicrasに変更したところ、こうした不具合は基本的に発生しなくなった。ときどき、再生の途中で勝手に終了してしまい、次のファイルが再生されるという不具合が発生するが、それほど深刻なエラーではない。
ただし、不具合が発生し難いのは、要するに、HDDが省電力タイプのUSB HDDから、通常の内蔵SATAに変わったからに過ぎないのかも知れない。であれば、内蔵SATAも省電力設定をすることによって、同様なトラブルが起きるのかも知れない。この辺りは、今後運用しながら確認すると言うことで…
history 2018.03.20:M/B J1900I-C入手 ¥3000[4123] 2018.07.11:ケースCF-A8989BK150入手 ¥1000[2310]※電源故障 2018.08.18:SO-DIMM(DDR3L/2GBx2)入手 ¥2592 2019.06.24:SO-DIMM(DDR3L/2GBx2)入手 ¥500[685]→結局こちらを使用 2021.05.09:ACアダプタ電源PicoBox入手 ¥2000 -------------------------------------------------------- 2022.12.04:アセンブル開始(仮組→電源故障で延期) 2022.12.12:120w ACアダプタ入手 ¥1760[1970] 2022.12.16:アセンブル再開 2022.12.18:PWMファンGELID FN-PX08-21入手 ¥1150 2022.12.23:基本アセンブル終了 2022.12.28:WD RED 6TB HDD入手 ¥8000[8444] 2023.01.04:6TB HDD換装、データマイグレーション 2023.01.06:システムのSSD化、完成形 2023.03.01:HDDクラッシュ、HDDを2TBに換装、ACアダプタを外に出す 2023.06.30:特に問題なく稼働中も、2TBではやはり容量不足 -------------------------------------------------------- 2024.01.23:HDDを4TBに増強、消費電力が少し増えた…