おうちのPCやPC部品は現役を退いたら親戚のおうちに旅立たれたりします。で、そちらでも不要になった場合はまたおうちに帰ってきたりします。そんなわけで昔使ってた Pentium4なゴツいPCがおうちに帰ってきました。でもこんなの使う用途がありません(笑)。てことで、もっと古いPCを使ってる会社サーバと置き換えることにしました。
いちおう会社で使うやつなので動かなくなっては困るということで gmirror でミラーリングしてみたのですが、どうもご機嫌斜めみたいです。時々妙な音がするし、一台で動かしたときに比べるとミラーリングしたときの書き込みパフォーマンスが半分程度に落ちてしまいます。普通はこんなことはないんですけどね。でもまぁいいかということでそのままほっとくと(笑)、今度はエラーが出てました。
ad2: FAILURE - device detached
subdisk2: detached
ad2: detached
GEOM_MIRROR: Request failed (error=6). ad2[WRITE(offset=42231148032, length=2048)]
GEOM_MIRROR: Device gm0: provider ad2 disconnected.
ほへー、gmirrorってエラー時にはどういう挙動をするのかな~と思っていたのですが、「エラーが出たデバイスは単純に切り離す」んですね。普通のHDDは1個や2個のエラーなら強制的に書き込みしてやると代替セクタを使って良きにはからってくれるので、ミラーのうち正常なほうのデータを書き戻してくれたらいいなーと思ってましたがそういう動作ではないようです。2台のミラーのうちの1台が切り離されるわけだから、けっこう マメにログを見ておかないといけないかもです(あるいはperiodicで異常が検出されたらメールを転送するとか)。
ところで、SMARTの状況は /usr/ports/sysutils/smartmontools で見ることができるようです。実行結果はあまりにも長いので抜粋するとこんな感じ。
# smartctl -a /dev/ad2 === START OF INFORMATION SECTION === Model Family: Hitachi Deskstar 7K250 series Device Model: HDS722516VLAT20 (略) ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 5 Reallocated_Sector_Ct 0x0033 076 076 005 Pre-fail Always - 579
わー、すごいねー。Reallocated_Sector_Ct が 579ですよ。普通はゼロなんですけど(汗)。もうダメっぽいですな。
いつも思うのですが、HDDの障害対応の練習で出来ることといえば電源や信号ケーブルを抜いてみることぐらい。HDDに「仮想不良セクタ発生機能」とかあったら良いのにね(^_^)。
(追記)
その後 mirror から切り離した ad2 をごにょごにょいじくってると ad2 が detach されました。ん? 切り離し作業をしたのは gmirror だと思っていたのですが、 ATAドライバの方だったのですな。ということで上の動作は「gmirrorが不良セクタを見つけたとき」ではなくて「gmirrorに接続されているデバイスが切り離された時」の挙動ですので訂正します。
01/30 | ( aoyama ) |
「仮想不良セクタ発生機能」これ面白そうw 確かにあったらファイルシステムのテストをするのに便利かもしれない。バグが潜在的にあるのって異常シーケンスであることの方が多いのは事実ですし。 istgtのTODOにこのアイデアもいれもいいですか? 連絡先どこかなぁって初めてトップみました。 なんだか懐かしい画像がwあれは95年ぐらいあたりか。 | |
01/30 | ( たかたに ) |
仮想不良セクタ機能が役に立ちそうならいれちゃってください。先日Windowsで不良クラスタのあるHDDをイメージでコピーした後 不良クラスタクリアの方法がどうしてもわからなかったので、実装されるまでに調べておかなければ(^^)。 >トップ うふふ、じつはそういうサイトなんです(^_^) |