MacPro 2010にBootcampでWindows7を入れる

Macの環境に移行して使ってる我が家なのですが、時折Windowsが無いと不便な事もあるので、BootcampでWindowsの環境を作ってみようと思ってハマリましたので、メモを。

対象
MacPro2010
OS
SnowLeopard/Lion共に発生
Win
Windows7 64bit Home,32bit Home/Professional
症状
BootCampドライバをインストール後にWindowsが起動しない (BSODが発生する)

Leopardの時にはWindowsXPをBootcampで作ったことがあったので、同じ手順でインストールすればいいやと思ったのがそもそもの失敗。

SnowLeopardになってWindowsVista以後しか対応しなくなったようで、XPではインストールしか出来ません。

そこでWindows7 64bit Homeを用意してインストールしてみたところ、BootcampからWindows7のインストールと起動までは正常に終了。ただし、64bitのWindows7だとSnowLeopardのDVDに入っているBootcampだとこの環境はサポートしてない、という表示がでて終了。全然ダメでした。

そこでLionの環境を作ってみて、そちらからBootcampでインストールしてみるとWindows7が起動した後に、ドライバーのインストールが正常に動作しました。ただしインストール後に再起動しますか?で再起動すると途中で青い画面(BSOD)が表示されて、正常起動が出来ません。

とっかえひっかえ以下の組み合わせを試しました

対象OS MacOS インストール ドライバ 安定性
WindowsXP 32bit Pro SnowLeopard 不可 - -
Windows7 64bit Home SnowLeopard 成功 導入不可 -
Windows7 64bit Home Lion 成功 導入可 BSOD発生
Windows7 32bit Home SnowLeopard 成功 導入可 BSOD発生
Windows7 32bit Home Lion 成功 導入可 BSOD発生
Windows7 32bit Pro SnowLeopard 成功 導入可 BSOD発生

とまあ、こんな具合です。補足としては、Bootcampは3.0〜3.3までをそれぞれ試しています。

結局のところ、試した全ての組み合わせでWindows用のドライバーがインストールできないか、出来てもBSODの発生は防げませんでした。Windows用のドライバーをインストールしないと画面の解像度は変えられないし、音は鳴らないしなので使い物になりません。

追試で、Windows32Bit Homeをインストールした後、Windows Updateを細かく当ててから試しても同じでした。

対処方

国内のサイトを見ていた限りでは、MacBook ProとMacProのもっと古い型のものはいくつかテクニックがあったのですが、どれもBootcampの新しいバージョン又はファームを更新すれば直るというものでした。

私の環境ではどれも該当しなかったのですが、国外サイトで情報を発見しました。どうも、複数のディスクを搭載している時に、Macのディスクをマウントしようとしてクラッシュしているようです(Bootcamp3.1で発生と事例には書かれていましたが、3.0〜3.3で発生を確認しました。4では未テストです)。

そこで、Bootcampのドライバーをインストールした後に、Apple社が提供しているドライバを削除します。

場所は以下の通りです。

C:\windows\system32\drivers\

この中にある、"applehfs.sys"と"applemnt.sys"を削除するか、リネームしてください。

Bootcampをインストールして再起動を促されたら、再起動する前にリネームするのが良いと思います(再起動するとBSODが発生します。万が一再起動してしまったら、起動中にF8を押すことでSafeModeで起動できますので、そのモードで起動してからファイルを消してください)。

ご丁寧なことに、一度ファイルを削除又はリネームしてもBootcampのアップデートを行う度に新しいファイルが作られます(日付が新しくなっているので更新されているようですが現象は同じでした)。そのため、アップデートをすると確実に対処しないといけません。

SnowLeopard側からのBootcampで動作するところまで進めたのでLionのBootcamp4.0で同じ手法で対処可能かまでは検証できていませんが、一つの情報として役に立てば嬉しいです(というか、ここまで分かるのに苦労しました..)