読者です 読者をやめる 読者になる 読者になる

データストレージ用ディスクのMFTが壊れる

先週木曜だか金曜に、2つあるデータストレージ用ディスクの片方がシステムから見えなくなっていたらしい。

ほとんどのデータは複製している設定なので、無事。

ただひとつ、"Music"共有フォルダだけは複製しない設定にしていた。

"Music"共有フォルダの中身はiTunesフォルダそのものなのだけど、中にはiTunes Storeで購入した曲、CDからインポートした曲、StationRipperでリッピングしたMP3が入っていた。

iTunes Storeで購入したDRMつきのAACファイルは拡張子が".m4p"、CDからインポートしたDRMなしのAACファイルは拡張子が".m4a"なので、これらはRobocopyで定期的にUSB HDDにバックアップしている。
よって本当に無くしたくないファイルは無事。

StationRipperでリッピングしたMP3は、何より容量が膨大だし(100GB超)、別になくなってもまたStationRipper数日動かしときゃいいだけなので、バックアップはしていなかった。


ディスクが見えなくなった理由は、おそらくMFTの破損。

ディスクの管理からは、パーティションは見えていて、「未フォーマット」の状態で見えている。

よって、パーティションテーブルは無事。
実際DiskProbeでは正常に見えていた。

パーティションテーブルの復旧ならまだ簡単だったんだけどな、MFTの破損だと正直手に負えない。


素直にデータの見えなくなったハードディスクを外して、WHS Consoleから該当ディスクを"Remove"すれば良かったんだろうけど、いろいろ悪あがきをしてたせいか、Dドライブに消えたデータの残骸であるところの大量のNTFSリパースポイントが残る羽目になってしまった。


実はしばらく放っておいたら、Drive Extender Migration Servicesが掃除してくれたんだろうか?

今回手動でリパースポイントを削除したので、そこまでは検証できていない。


NTFSリパースポイントを削除するのは、"fsutil reparsepoint delete"というコマンド。
"for /F "delims=" %i IN ('dir /b /s /a-d') do fsutil reparsepoint delete %i"を実行したんだけど、一部のリパースポイントが削除されない。

dirコマンドがマルチリンガル対応でないんだろうか、ファイル名に"μ-ziq"とか"á"とかいう文字が入ると、doコマンド以下に正確なファイルパスを渡せていないようだった。

そんなファイルはちまちま手作業で全部削除


一旦メインのPCにデータを全部コピーして、WHSのストレージは再構成。

MFTが壊れたディスクを再利用するのは怖いけど、近いうちにディスクを買い足すつもりで再利用。
今回はWindows Server 2003のミラーリング機能を使ってみることにした。


実は以前にWHSのストレージ管理方法に見切りを付けて、一旦はミラーリングにして運用していたんだけど、やっぱりお手軽なのでWHS流のストレージ管理に戻した経緯がある。


でもやっぱりまたミラーリングにしてしまった。

WHS流のストレージ管理でない、通常のミラーボリュームの場合、NTFS圧縮が使えるだとか、それなりにパフォーマンスは出るという利点があるから、しばらくこのスタイルで使ってみたい。