おれのIT日記

2025/05/18 (日)

Linux

NEC Express5800をもう一台ヤフオクで入手


金も無いくせにポチった。待望のサーバ二号機。
型番こそT110i-S、と同じだが、CPUちょっと落ちて、コアも2(1号機は4)。
ただ、実際の用途はネットラジオの自動録音と曲目リストの取得(curlでhtmlを保存する程度)だから、TDPが低いコイツの方が、電気代を節約できるんでは?という皮算用もあった。
以前、電気代を気にしてミニPCをサーバにしていたら、半年ぐらいしてダメになった。
m.2メディアがイカれたか、マザボのm.2ソケットがイカれたか、実は未確定である。
我が家にはm.2メディアも、ソケットを備えたマザボも、変換アダプタも保有していないので、切り分け方法が無いのだ。だから、たぶん壊れたんだろうと思うm.2カードを捨てずに取ってある。
が、とにかく熱で、何かがダメになったのは確実と考えている。

ちなみに、公開サーバではないサーバとして、もう一個のミニPC(Nucbox)も稼働中だ。
「ナックボックス」というのが一般的発音だと、ごく最近まで知らなかった。ヌークボックスだと思っていたよ。
こいつには、USB扇風機を組み合わせて、自分で自分に風を当てながら駆動するという、ちょっと他人にはお見せできない姿で、日々、動画圧縮に勤しんでもらっている。
二年以上経ったが、ほぼほぼフル稼働しているようで、冷却効果は要件を満たしてはいるように思える。

しかしだ。
これをもって「我が家のサーバです」とは言いたくない。
男なら、一台はPCサーバを動かしておきたいじゃないか。
で、動かした。
動くと、今度は止まるのが不安になる。(←いまココ)
二台目を置きたいじゃないか。万一、俺のサイトがバズったときの負荷分散にも必要だ。(と自分に言い聞かせる……)

ノートPCは短時間の停電にも強く、一見サーバ向き、と勘違いされがちだが、不在中に発火の危険があるから絶対ダメだ、というのは知っていた。だから、もし二号機構築が叶うなら、やはり同じく「サーバ機」を使おうという事は決めていた。そして、一号機と同じ機種なら、部品取りにも有利だし、使い勝手も同じだと、スキル習得時間も浮くし、何かといいだろうという考えも有った。

この手のサーバは、官公庁あるいは企業でもクライアントではなくインフラ部門が使っていたものと思われる。
きれいである。
ストレージは無し。
ヤバいものは廃棄し、残りカスを横流ししているのだろう。俺も情報処理業界の端くれだったから、容易に想像できる。
ただし、メモリは16G(8G×2)載っているのでたいへん嬉しい。
送料あわせると、3,100円少々。一号機は7,800円ぐらい払った記憶。とはいえ、特段安いとは言えない。一号機は、1T+6TのHDDを積んでいたので、お得だった。
今回は、どうせ捨てるWindows Serverなどを不要なオマケに付けられて「パスワードなんだっけ」と悩む手間を惜しんだ。自分でOSを入れるまで動作確認はできないことになるが、
万が一、電源の入らない不良品だったとしても、DDR4メモリ16Gを3000円強で買ったと思えば諦めもつくだろう、と計算してポチった訳だ。結果、損はしなかった。それどころか、自由に電源on/offして実験できる二号機を入手したおかげで、NEC Express5800 T110i-Sについての理解が深まった。

■気づき
今回買った二号機の話をする前に……一号機はメモリ4Gしか与えずにコキ使っていたことを、改めて痛感した。
(いや、我ながら酷いね!!)
一度、handbrakeの圧縮バッチ処理を動かしたらディスクアクセスが凄くてびっくりして止めたことがあったが、考えてみれば道理だ。
(現在は、先に触れたミニPC(Nucbox)が、このhandbrake圧縮バッチを担当している。Express5800の上に鎮座した彼は、お椀を伏せるように、あるいは帽子のように、子亀の扇風機を上部に背負うことを主人によって強要され、自分の電力で扇風機を回して自分を冷やすという、あまりかっこよくない姿で働かされているのである。彼はモニタも与えられず、時々主人がsshで入り込んで、処理状況の確認や、完成ファイルの取り出し、次の処理ファイルのアップロードなどをするだけだ。扇風機は、会社で足元に隠して太ももや尻の蒸れを防ぐために働いていたやや大きめのもので、Nucboxの下まで漏れた風の余力で、下のExpress5800の冷却にも若干寄与するのでは、という貧乏くさい計算は、ここでも働いている)

■二号機の罠その1、『ストレージ無し』は覚悟のうえだったが……
ストレージ無しということを、ぜんぜん気にせず迷わず購入したが、届いて気づいたのは、HDDだけでなく、スペーサというかマウンタというか、それごと、捨ててくれたようなのである。大量のサーバPCを廃棄作業する作業者の気持ちを想像すれば、そりゃそうかという気がしてくる。

同じくオクで買った一号機では部品がちゃんと有ったので、今回の買い物でもぜんぜん気にしておらず、完全に無警戒だった。

Express5800 T110i-Sの場合、2.5インチ用と3.5インチ用のマウンタが取り付け可能で、後者だと2台収納できる。ところがその部品が無い。その後ずいぶん、オクやメルカリをチェックしたが、単体出品には出会えていない。いずれちょっと、素人工作でも試みようと思うが、いまは、中身の構築が優先だ。

コレがなくても、動作上も、電気的にも問題ないと思うが、やはり、わずかな鉄板の厚みの差とは言え、物理的な「ピタッと感」がなく、少し遊びが残り、落ち着かない。
組立と本体移動をしても、3.5インチHDDがするすると滑り動くというほどではなく、ちゃんとおとなしく座ってくれてはいるのには感心したが、しかし、床に置いた二号機を起動していると、HDDの振動が床から伝わってくるので、HDDの寿命にも悪影響があるかもしれない。ましてこの剥き出し状態では、2.5インチに換装しても設置は困難な感じだ。

マウンタって、有ると、組立時に部品の滑りが悪くてスッと入らず、イラっと来てシリコンスプレーを殺虫剤のように猛々しく浴びせてしまう、金属だけでできた粗末なカゴみたいな部品であるが、いざ無いと、有難味が身に沁みるのである。

これじゃ、HDDはすぐ傷むかもな、という思いがあり、試運転でもあるし、とりあえず故障寸前の古い500G HDD2台で組み上げてみた。サーバとして軌道に乗ったら、もうちょっと良いHDDかSSDにクローンコピーして拡張してあげれば良いだろう。

■二号機の罠その2、慣れないRAID
一号機と違い、出品時に、ハードウェアRAIDが、有効になっていた。
我が家のNEC Express5800 T110i-Sでは、二台ともマザボ上の、ジャンパーで設定される仕様である。
(なお、同じ型番でも仕様差があるらしいので、このページを自分の参考にしようとする誤ったユーザさんは、ぜひ注意して情報を取捨選択願います)

サーバを組む以上、RAIDは魅力的ではあるが、私の場合、いくつかの理由で採用を見送ることにした。

ただ、せっかくだから、試しにRAID1組んでみよう、と遊んだのが原因で、復旧にハマった。
RAIDを自分で設定したことがないとこうなる。

まずは、BIOSでの設定画面がわかりにくかった。一応これでもSEの端くれだったから、RAID0?それぞれの概念仕様なんてのは、情報処理技術者試験でしっかり頭に叩き込んであるけど、それと目の前のBIOSが語りかけてくる大文字アルファベットの英語、赤・青・白程度しかない貧弱な表現が問いかけるものと、自分の知識が、まったく連動しないんですなぁ。一言でいうと「響かない」ってやつだ。

こういうのは、マシンごとにまた変わるだろうし、個別に操作のコツを詳しく覚えるより、RAIDの基本知識を再動員して、自分が何をしたいか、しっかり意識して操作するしかないと思われる。頻出する単語が何を指すかだけ、頭に入れておくと、他機種を使うときに参考になるだろう。

さてRAID1をやめ、HDDの初期化をするのは、どうせかんたんにできるとタカを括っていたが、ちょっと甘かった。なんでも数時間、試行錯誤したと思う。お恥ずかしい。

ふだん、HDDのパーティション(が壊れ|を壊し)たり、データ(が壊れ|を壊し)たりすることが多いので、RAIDごとき、かんたんに壊れる(=初期化できる)という思い込みがあったのだ。

RAID1は確かにシンプルな仕組みなんだけど、ことHDDの初期化(RAID1解除)は、知っていればどうということはないのに、初めていじくるおれは、ちょっと苦労させられた。具体的には、500GのHDD2本でRAID1を組んでみたあと、RAID1は解除してインストールをやり直したかったわけなのだが、このとき使ったHDDが「自分がRAID1を構成する1本だったこと」を忘れてくれないわけだ。

まず、"裸族のお立ち台"的なHDDスタンドで、クローン機能を備えたものを使い、他のHDDからクローンで上書きした。最初からこうするつもりだった。UEFI以前のWindowsはこうしてバックアップしていたし、機種変更もこれでやっていたから、盲目的に過信していた。

中身もパーティションのサイズも、どうせあとで切り直すから何でもいいので、60GのSSDをコピー。
この時点で目的未達成なのに、俺、気付かない。

500G HDDと、先程とは全く別の500G HDDの2台を二号機に設置し、鼻歌まじりにLinux Mintのインストーラを起動すると、/dev/sdaと/dev/sdb以外に、見慣れない、
/deb/md126

というものが幻のように現れ、認識される。

最初なんのことかさっぱりわからんかったし、126という番号も誰がつけたの?って感じなんだが、これ、さっきのRAIDだなとようやくわかった。
さっきクローンでHDDをまっさらに潰したはずなのに!
いったいどこにいらっしゃったんですか?!
……と声に出てしまった。次のコマンドで確認すると、たしかに、RAID1が認識されている。

$ cat /proc/mdstat

さっきRAID1に使ったうちの一本だけを刺して、もう一本は外して再起動していた。
RAID1の立場からすると、まさに出番というか、待ってました、というところなのであろう。
さぁさぁさぁ、復元してご覧に入れましょう!ホレ!!…という、イキりぶりが実にうっとうしい。

もう大喜びのドヤ顔で、/dev/md126を認識しているが不完全であること、本来、2本のHDDで構成されること、そのうちの1本しか刺さってないことを、雄弁に、とうとうと、流れるように語ってくれるのである……別にアンタなんか呼んでないのにねぇ。

できあいのRAIDデバイスは今でも重要データ保管用に使っているが、自分でRAID1を組んだことがなく、知らなかったんだ。

ここで、/dev/md126(RAID1が認識する仮想デバイス)を無視して、/dev/sdaにインストールしようと選ぶと、ちゃんと、GUIから(gparted)、操作不能になっている。
よくできていて感心する。
これなら、RAID1の片割れが壊れても、ここから再ミラーリングして残っているデータは復元できるんだろう。
でも、繰り返すが、いまの私には不要な機能なんだよねぇ。

先に書いたとおり、HDDクローニングで解除できるだろうと気楽に思ってたがダメだったので、今度は、ネット情報を斜め読みすると、これまたドヤ顔で、

 ddコマンドで頭2048セクタにゼロを書き込め

という、確信に満ちた情報を複数見つけた。さっそく実施し、再起動してみた。

俺のやり方が悪いんですかね? あるいは環境がなにか違っているのか。
何事もなかったのかのように立ち現れる/dev/md126……まったく効果なし!
恐るべしRAID1。
なお、この、ddによるRAID解除方法は複数のブログで紹介されていたので、俺以外にも「?」となるひと、おるんではないかと思って拙文を長々と書いておる次第です。

解決には、wipefsというコマンドを使うのがよろしい。

このことを紹介してくれるブログ、俺には、一個しか見つけられなかった。
ChatGPTも同じくddのことしか教えてくれんかったので、昔ながらのブログ探し、という怪しい方法で頑張ったが……質問の仕方が悪かったのか。あるいは、有料プランだと、正解を教えてくれるのかしら?

俺が見つけられないだけかもしれないが、俺的に輝かしい二個めの栄誉を掴みたく、この文を書いておる。

'$ wipefs --help

使い方:
 wipefs [オプション] <デバイス>

Wipe signatures from a device.

オプション:
 -a, --all           wipe all magic strings (BE CAREFUL!)
 -b, --backup        create a signature backup in $HOME
 -f, --force         force erasure
 -i, --noheadings    don't print headings
 -J, --json          use JSON output format
 -n, --no-act        do everything except the actual write() call
 -o, --offset   offset to erase, in bytes
 -O, --output  COLUMNS to display (see below)
 -p, --parsable      print out in parsable instead of printable format
 -q, --quiet         suppress output messages
 -t, --types   limit the set of filesystem, RAIDs or partition tables
     --lock[=] use exclusive device lock (yes, no or nonblock)
 -h, --help          display this help
 -V, --version       display version

Arguments:
  arguments may be followed by the suffixes for
   GiB, TiB, PiB, EiB, ZiB, and YiB (the "iB" is optional)

Available output columns:
     UUID  partition/filesystem UUID
    LABEL  ファイルシステムのラベル
   LENGTH  magic string length
     TYPE  superblok type
   OFFSET  magic string offset
    USAGE  type description
   DEVICE  block device name

詳しくは wipefs(8) をお読みください。

wipefsは、何も新しいインストール作業など不要で、Linux Mint Live CD(22)上から実行できた。
実行しても、一見、相変わらず手応えなし……だったが、システムを再起動すると、めでたく、普通のHDDになって、やっと、RAID1のことを忘れてくれました。ありがちだが、RAID1はどうやら、起動時に読み込んで認識してしまうと、それっきり情報を更新しないんだと思う。実際にはHDDの登録情報消去は、強制的に(-fオプションで実行した)成功している。

wipefsというのは初めて使ったが、mintのインストーラに限らず、うちのほとんどのLinuxにも入っていた。
たぶん、あまりに基礎的すぎて、誰もあえて、説明しないんだろう。

HDDの頭2048バイトというのはよくわからんが……GPT形式のパーティション以前の知識と混じっているのかもしれない(未調査) 我が家には、古いマシン複数があるので(古いのしか無い)、ちょっと比較実験をして深めておきたい部分もありつつだが……それは後日のお楽しみにしておこう。

いや、俺としては、勉強になりました。