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

亀岡的プログラマ日記

京都のベッドタウン、亀岡よりだらだらとお送りいたします。

MacでWindowsを外部ストレージにインストール・起動する方法

前置き

題記のことを知りたい人は読み飛ばし推奨。

先日、Vagrantの勉強会にて、Windows用のVagrantだと、最新版からHyper-Vでのホストに対応していてアツい!という話を聞きまして。 んじゃあうちの子でも、と思ったんですが、あたりまえだけどFusion上のWinではHyper-Vは無効ですよねー、そですよねー。

んで、だいぶ前に先代MBPがお亡くなりになった時に、512GのSSDが余っておりまして、まぁこれをUSB3.0でつないでやって、そこからWindowsをBootしてやればいいじゃん、と思っていたんですが。

標準では、なんと設定してくれませぬ。いやはや・・・

てなわけで、ggrksしまくった結果です。

というわけで、やることは

  • MBP Retina 2013 Late 15inch に
  • Windows 2012 R2 を
  • 外部ストレージを起動ディスクにしてインストール!

以下、本題です。

日本語情報は自分の環境で失敗

まず、日本語で解説してくださっている記事がありました。

しかし、こいつは残念ながらうちの環境ではうまくいかず・・・。Dismによるイメージの書き込みが何故か失敗してしまう、という事象に苦しめられ、残念ながら諦めました。

うまくいった方法。

英語を苦にしない人は以下でどうぞ。

以下Step By Stepで。

0. 必要なもの

  • インストールイメージ(メディアでもOK)
  • Windowsが動いているPC(最悪ネカフェに行ってもOK。多分。)
  • USBメモリ(4GByteくらい。インストールイメージを移動させたりBootcampようドライバを移動させたりとかに使う)
  • 覚悟(ぇ

1. Installディスクからイメージファイルを抜き出す

まずはInstallディスクを入手して下さい。入手したらば、起動ディスクのroot\Sources\install.wimをごそっとWindowsマシンに持ってきます。

とりあえずは、C:\wim\install.wimにコピーしておきましょう。

2. Windows起動ドライブの下準備

次にWindows起動ドライブの下準備です。DISKPARTコマンドでもって、ディスクのクリーン&フォーマットをします。だいたい以下のように打ち込んでいけば大丈夫のはず。

ポイントは、Boot領域用のパーティションWindowsインストール用のパーティション2つを作るところですね。ここでは前者をbドライブ、後者をoドライブとしています。

rem DiskPartコマンドに入る
diskpart 

rem Disk情報を見る
list disk

rem リストされたディスク情報を見て外部ドライブを見つける。
rem 以後見つけたディスクを"#"とする

rem インストールする外部ドライブを見つける
select disk #

rem インストールディスクをクリーン
clean

rem boot用のパーティションを作成してフォーマット
create partition primary size=350
format fs=fat32 quick

rem アクティブにしてドライブレターを振る
active
assign letter=b

rem Windows用のパーティションを作成してフォーマット
create partition primary
format fs=ntfs quick

rem アクティブにしてドライブレターを振る
active
assign letter=o

rem Diskpartを終了
exit

3. Windows起動パーティションにイメージを書き込む

ドライブができれば、まずWindowsボリュームにインストールイメージを展開します。

以下のツールimagexを使います。

一応、怪しいツールではありませんのでご安心を。

まず、以下のコマンドを適用します。

imagex.exe /info C:\wim\install.wim

これでインストールオプションが列挙されます。今回だとWinServerなので、ServerCoreオプションとか、GUIオプションとか、結構色々でてきます。ここでは1番を選んだことにしましょう。すると、以下のコマンドでインストールが完了します。

imagex.exe /apply C:\wim\install.wim 1 o:

4. Windows起動パーティションにBoot情報を書き込む

これで、Windowsはインストールできましたが、これだけでは立ち上がってくれません。 というわけで、起動パーティションを作ります。今回はドライブレターbで作っていますので、ここにブート情報を書き込みます。書き込むツールは、すでに先のWindowsイメージの書き込みで作られています。 というわけで、以下を実行。

o:\windows\system32\bcdboot o:\windows /l ALL /s b:

5. ドライバインストール

これで、Mac起動時にOptionキーを押し続けていればWindowsの起動オプションが出現するはず。しかしこれではほとんどの外部デバイスにアクセス出来ないので、以下からBootcamp用ドライバをとってきてインストールします。

WindowsServerの場合、インストール前にWifiをオンにしておくことをオススメします。(ServerManager->機能の追加 から可能)さもないと、もう一度ドライバをインストールするハメになりますからね・・・

まとめ #ない

まとめない。トラブってもみんな頑張れ。いやコメント貰えたら調べるくらいしますけれども。