2007-07-21 (土)
■ スパンボリュームの落とし穴 (3)
ダイナミックディスクの一部のパーティションを Windows のインストーラで削除したら、他のパーティション(スパンボリューム)も見えなくなった話。
メインで使っている PC の悪くなったので、 OS を入れなおそうと作業していたら大失敗してしまった。いつでも気軽に再インストールできるように、プログラムはCドライブに、データはDドライブに入れるようにしているんだけど、Cドライブのパーティションを削除したら、Dドライブまで見えなくなってしまった。
新しく買ってきたHDDにOSをインストールして復旧を試みていたんだけど、ようやくデータを復旧できた。 最終的にやったことは、 DiskProbe を使って MBR のシステム ID を NTFS からダイナミックディスクに書き換えただけ。 以下のサイトが参考になった。
ディスクの管理ツールで、システム ディスクまたはブート ディスクが "ダイナミック"、" 読み込み不能" と表示される
この問題は、Windows 2000 を再インストールし、セットアップ中にダイナミック ディスク上のボリュームを削除して再作成した場合、または、Fdisk など、他のディスク パーティション ツールを使用して新しいパーティションを作成した場合に発生することがあります。Windows 2000 のセットアップやその他のディスク パーティション ツールで作成できるのは、ベーシック パーティションのみです。
Windows 2000 の外部のダイナミック ディスクにパーティションを作成したり、セットアップ中にパーティションを作成したりすると、ダイナミックとベーシックの両方のパーティション テーブル エントリを持つディスクが作成されます。Windows 2000 のセットアップ中にボリュームを再作成すると、パーティションのシステム ID バイトが 0x42 (種類 : ダイナミック) からベーシック パーティションのシステム ID バイトに変更されます。
この問題を回避するには、DiskProbe (Dskprove.exe) などのディスク編集ツールを使用して、マスタ ブート レコード (物理ディスクのセクタ 0) のコピーをフロッピー ディスクに保存します。その後、問題のシステム パーティションまたはブート パーティションのシステム ID の種類を 0x42 に戻します。
データを残したまま、ダイナミックディスクをベーシックディスクに変換する方法にダイナミックディスクとベーシックディスクの MBR の違いが載っていてとても参考になった。 ここに書かれていることの逆をやった感じ。 (もともと消す予定だった)C ドライブは見えなかったけど、(消す予定の無かった)Dドライブのスパンボリュームは見えた。 本当に良かった…。
■ RAID1 とバックアップを使う
痛い目にあわないと理解しないバックアップ対策の大切さ。 HDDも1台増えちゃったし、マザーボードにも RAID コントローラがついていることだし、 RAID を組むことにする。 以下、やったことのメモ。
RAID 化する前の HDD 構成
- HDD0 … 200GB (ダイナミックディスク・スパンボリューム)
- HDD1 … 250GB (ダイナミックディスク・スパンボリューム)
- HDD2 … 320GB (ベーシックディスク) ← ここに新しく OS をインストールしている
データの退避&ディスクの初期化
- スパンボリュームに入っている大切なデータを、ベーシックディスクの HDD2 へとコピー
- HDD0 と HDD1 のパーティションを削除し、それぞれのディスクをベーシックディスクに変換
RAID1 化
過去の日記によると、使っているマザーボードは GIGABYTE GA-K8N Ultra-9。 日記をつけておくと、こういうときに役に立つ。 このマザーボードには RAID コントローラが付いている。
- 起動時に DEL キーで BIOS の設定画面へ。 SATA の RAID コントローラを有効にする。
- 対象は HDD0 と HDD1 が繋がっている SATA1 のプライマリとセカンダリ。
- HDD2 が繋がっている SATA2 は無効のままにしておく。
- 再起動後に F10 キーで RAID の設定画面へ。 HDD0 と HDD1 でミラーリング(RAID1)を組む。
- シングルの HDD2 にて Windows を起動
- 起動後に「新しいハードウェアが見つかりました」と表示されるので、「ドライバの検索」で RAID コントローラのドライバをインストール
- 「管理ツール」から「ディスクの管理」を開くと、新しいドライブが1つ見える。
- これが RAID1 でミラーリングされている HDD0 と HDD1 。
- このドライブを NTFS でフォーマットし、 D ドライブに割り当てる。
RAID 化後の HDD 構成
- HDD0 & HDD1 … 200GB (ベーシックディスク・NTFS) ← 中身は空
- HDD2 … 320GB (ベーシックディスク・NTFS) ← OS + 復旧したデータ
本当は RAID 化したディスクに OS から何から入れるのがいいんだろうけど、 RAID のディスクに OS をインストールするためには FDD ドライブが必要らしいので、やめた。 OS はいつ消えてもいい覚悟で使うか。 大切なのはデータの方だし。
バックアップの設定
最後にデータのバックアップ。 デジカメで撮影した写真のデータが30GB弱ある。 DVD-RAM を買ってきて、そこにコピーしようとしたんだけど、1枚1時間、トータルで6時間ほどかかる見込みだったのでやめた。 時間のかかるバックアップ方法だと、そのうち面倒でバックアップしなくなりそうだからね。
結局、以下の方針にした。
- HDD0 & HDD1 (RAID1) … Dドライブに割り当て。マイドキュメント、マイピクチャ(Picasaの管理フォルダ)、マイミュージック(iTunesの管理フォルダ)を格納する。
- HDD2 … パーティションを2つに分ける。1つが OS を入れている C ドライブ。もう 1 つのドライブを、Dドライブからのバックアップ用にする。
バックアップには、 Windows 標準のバックアップツールを使う。 これだとスケジュール実行もできるし、差分バックアップもできる。 30GBのデータのバックアップも20分弱で終了。 これなら実用的だ。
そもそもバックアップディスクを別に分けるのなら、 RAID 化する必要があったのか?という疑問は残るけど、まぁいいや。
■ Windows 不調
と、簡単に書いたけど、実際にはもっと大変だった。
- HDD を 3 台繋いだ状態で Windows を起動すると、起動後しばらくして Windows がフリーズする。(正確には、マウスだけが動く状態になる)
- HDD を 1 台だけにすると動く。でもたまにフリーズする。
- セーフモードで起動すると HDD が 3台でも動く(DiskProbeによるデータ復旧もセーフモードで実行した)。
セーフモードで動くことから、怪しいのはビデオカード。 紆余曲折した後に、扇風機を当てた状態で動くようになった。 熱が原因かなぁ…。