2008-05-24
_ [PC][OS/アプリ]
disk0s2、disk0s3をHFS、disk0s4をFAT32にフォーマットして、再度Windowsをインストール。
もちろんインストール時にNTFSでフォーマットしなおした。
この段階でMacでパーティションを見てみると、disk0s2、disk0s3はHFSでそのまま、disk0s4はNTFSに変わっていた。
先にgrubを検証したいので、Ubuntuをインストールしなおして、grubを/dev/sda5にインストール。
dd if=/dev/sda5 of=ubuntu.boot bs=512 count=1でブートセクタ引っこ抜き、boot.initに登録。
起動できた。Windowsで認識できないパーティションにインストールされてても問題はないようだ。
VistaインストールDVDで修復モードを起動し、diskpartでパーティションを操作。set id=7、format fs=ntfsする。
XPを起動しパーティションを確認するとしっかりNTFSになっているが、Macで確認するとHFSのまま。なぜだ。
それは置いといて、とりあえずXP上でVistaインストーラを起動し、disk0s3にVistaをインストール。
念のため、インストール時にもNTFSでフォーマットした。
XPでもVistaでもNTFSと表示されるが、やはりMacではHFSのままだ。何が原因だ?
ちなみに、bootmgrではXP、Vista、Ubuntuが選択できるが、boot.iniからUbuntuを消すとbootmgrからも消えた。
bootmgrはboot.iniも見てるらしい。
どうも現象としては、MBRでのパーティションIDとGPTでのパーティションIDが食い違ってる。
じゃあ、GPTでのパーティションIDをNTFSにするにはどうするか?
Macでパーティション操作すれば正確に設定できるのは確かなので、ためしにdisk0s2(Eドライブ)をFAT32で再フォーマット。
すると、HFSからFAT32に変わった。なぜかdisk0s3(Dドライブ)もNTFSとして認識された。
少なくとも、Mac上でパーティション操作したときは、ファイルシステムを調べて同期を取るらしい。
じゃあ、このFAT32をXP上でNTFSでフォーマットしたらどうなるか?
MacでもNTFSと認識した。んんー、よく分からん。
まあ、NTFSはなんとなくうまくいったので、ext3とswapが認識できない件を調べる。
disks5はext3だがMac上ではなぜかFAT32、swapはHFSで、勝手に"Linux Swap"とかラベルがついてる。
ためしにswapをFAT32でラベルも"swap"としてフォーマットするが、ラベルは依然として"Linux Swap"のまま。なぜだ。
Ubuntu起動してGPartedで確認してもラベルは貼られておらず、FAT32なのでswaponできてなかった。
GPartedでswapでフォーマットしなおしてswaponした。が、今度はMBR-GPTの同期が崩れたらしく、Windowsが起動しなくなった。
こうなってしまうと基本的にWindowsは死んだと思っていいが、一縷の望みを賭けて、VistaインストールDVDから自動修復。
一見うまくいったように見えたが、Vista起動するとディスクがGPTと認識され失敗。
XP起動しようとしてもntldr not found(だったっけ?)でやはり失敗。
結論としてはGPartedは使うな、と。
調べてみると、GPTのパーティションIDはMBRのそれとは違う形態のIDになっていて、
Mac側でそれぞれ読み替えて同期を取っているようだ。GPartedはそこまでしていない。
で、FAT32、NTFS、ext3はどれも同じIDを使っている。swapは違うID。
ただ、Macではext3とswapのファイルシステムはサポートされてないため、
不明なパーティションとして認識されてるだけのようだ。