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

ミラーリングとHDDのセクタサイズ問題

ちょっと自分がひっかかってしまったので、記録代わりに残します。


現状PCをCドライブをSSDで、DドライブをHDDのコンボ運用にしているのですが
Dドライブ側のHDDがそろそろ寿命っぽいので1台HDDを追加して
DドライブのHDDのミラーにしようと思ったのです。


ミラーは同じデータを必要な都度違うディスクに書きだす仕組みで
色んなやり方があるのですが(専用のチップ使ったRAID1が一番メジャーだと思う)
今回はWindows上の「ディスク管理」の機能でやろうかと画策。


Windows上ではディスク上のパーティション単位で「ボリューム」という塊単位で扱っていて
「ベーシックボリューム」と「ダイナミックボリューム」の2種類がある。
それぞれ特徴があって、ベーシックはOS起動には必須、ダイナミックはミラーを始め高機能だけどOSはインストールできないというもの。


うちの環境の場合、CドライブSSDでDドライブHDDなので、Dドライブはダイナミックで問題なし。
(SSDが動かなくなったら、D→Cはやらず別ドライブを追加する)


で、通常であれば新しいHDDを接続してWindows上で認識できたら、Dドライブのパーティション右クリックメニューから「ミラーの追加」で新しいHDDを指定すればできるのですが
今回は本題であるセクタサイズ問題(セクターサイズ問題)にかかってNGという結果になりました。



これまで20年近くHDDのセクタサイズは512Byteに(事実上)統一されていたのですが
大容量化に伴い、セクタサイズが4096Byteまで引き上げられた。2010年頃の話かな?


その結果下記のような問題も当時あったようです。(全然マークしてなかったけども)
http://www.atmarkit.co.jp/flinux/rensai/watch2010/watch03a.html
http://lkml.indiana.edu/hypermail/linux/kernel/1002.2/00431.html


で、ミラーリングはWindows上で扱えるファイル単位ではなく、セクタ単位*1で扱うため
この影響をモロに受けてしまったようです。



肝心の回避方法ですが「セクタサイズを揃えたディスクに交換」しかないようです。
まあちゃんと作るところは同じメーカーの同じ型番でミラー用のディスクを揃えると思うので
この問題にぶち当たることはないと思います。


(;'-')まあ物理ディスクを相当量扱うような仕事でもない限り、今後も含めてぶち当たることはないでしょうね。


何年前か忘れたHGSTのHDDとWD最新のHDDをミラーしようとかいい加減なことを考える人は
そんなにいっぱい居ることはないかと。メーカー非公式であれこれ部品使って保守する人くらいか。

*1:厳密にはRAIDチップ上はセクタ単位、Windows上もセクタ単位?ブロック単位?