2015-10-30

ハイブリッドインストールメディア

MacにWindows 10をインストールするのは簡単である。ただし、それはBoot Camp アシスタントのサポートがあればの話だ。

Apple WebサイトのBoot Campサポートページ にある「Windows 10 をサポートする Mac コンピュータの一覧」に含まれていない機種だと少しばかり面倒なことになる。

Windows 10のインストールをBoot Campにアシストしてもらえないような古いMacのために、OS XのインストーラーとWindows 10のインストーラーの両方を、1枚のSDカード(もしくはUSBフラッシュドライブ)に収めて、OS XとWindowsどちらでも起動可能にしたハイブリッド インストール メディアを作っておくと便利である。

これは、もともと太古の Intel Core Duo 搭載 iMac や Intel Core Solo 搭載 Mac mini にWindows 7だけを新規インストールしてWindows専用機として使うための手段として編み出した技なのだが、Windows 10のインストールにも使えるようなので作り方を書き留めておく。

OS Xのインストーラーと、Windowsのインストーラーの両方を格納するのに充分な容量を持ったSDカードを用意する。この原稿を書いている時点で最新の OS X 10.11.1 El Capitan と Windows 10 64ビット版の組み合わせでも16GBで足りる。

まず、ディスクユーティリティ '/Applications/Utilities/Disk Utility.app/' を使って、インストールメディアとなるSDカードに2つのパーティションを作成する。

パーティションマップ方式を「マスター・ブート・レコード」とし、先頭パーティションを「フォーマット: MS-DOS (FAT)」、2番目のパーティションは「フォーマット: Mac OS 拡張 (ジャーナリング)」として初期化する。

先頭パーティションはWindowsのインストーラーを書き込むためのもの、2番目のパーティションにはOS Xのインストーラーを書き込むためのもの。ディスクの名前は、「WIN」と「MAC」にしておく。

この操作は OS X 10.10 Yosemite まではGUIで簡単にできたのだが、 OS X 10.11 El Capitan 付属のディスクユーティリティでは、とんでもない仕様変更により マスター・ブート・レコード方式のディスクにパーティションを作成できない のでターミナルでfdiskコマンドを使うしかない。

対象となるSDカードのデバイスファイルが /dev/disk1 であるとして、rootユーザーになって、

# diskutil unmountDisk disk1
# dd if=/dev/zero of=/dev/rdisk1 count=34
# fdisk -e /dev/rdisk1
# diskutil eraseVolume FAT32 WIN disk1s1
# diskutil eraseVolume HFS+ MAC disk1s2

のような感じだ。

fdiskによるパーティション分割後のディスクの状態を例示する。

Disk: /dev/rdisk1   geometry: 1907/255/63 [30646272 sectors]
Signature: 0xAA55
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
 1: 0B    0   1   1 - 1023 254  63 [        63 -   12582912] Win95 FAT-32
 2: AF 1023 254  63 - 1023 254  63 [  12582975 -   18063297] HFS+        
 3: 00    0   0   0 -    0   0   0 [         0 -          0] unused      
 4: 00    0   0   0 -    0   0   0 [         0 -          0] unused      

SDカードの初期化が終わったら、OS Xのインストーラー部分を作成する。 アップルのサポートサイトに OS X の起動可能なインストーラを作成する という文書があるので、これに従ってSDカードのMACパーティションに対してcreateinstallmediaコマンドを実行する。

OS X 10.11 El Capitanを書き込む場合のコマンドを例示する(事前にMac App Storeから「OS X El Capitan インストール」アプリケーションをダウンロードしてあるものとする)。

$ sudo /Applications/Install\ OS\ X\ El\ Capitan.app/Contents/Resources/createinstallmedia --volume /Volumes/MAC --applicationpath /Applications/Install\ OS\ X\ El\ Capitan.app

OS X 10.8 Mountain Lion 以前のバージョンには、起動可能なインストールメディアを作成する公式な手引はないが、ディスクユーティリティを使ってゴニョゴニョすれば作成できる。

本来、古いMacへのインストールが目的なら El Capitan なんぞより Mac OS X 10.6 Snow Leopard を使う方が良い。てか、良いも悪いも32ビットIntelプロセッサー搭載MacではEl Capitanは動作しない。Mac OS X 10.6.3 Snow Loepard Install DVD から、SDカードにインストールメディアを作成する場合は、次のようにする。

$ sudo asr --source /dev/disk2s3 --target /dev/disk1s2 --erase --noprompt

disk2s3がInstall DVDのデバイスファイル、disk1s2がSDカードのMACパーティションのデバイスファイルであるものとする。

OS Xのインストーラー部分の作成が完了したら、Windows 10のインストーラー部分を作成する。

SDカードのWINパーティションへの書き込みはWindows上で行うので、SDカードをMacから取り出して、別のWindows PCか、すでにBoot CampなどでWindowsを動かしているMacにセットする。以降、Windows上での作業となる。

マイクロソフトWebサイトの Windows 10 のダウンロード ページを開く。この記事では、古いMacへのインストールを想定しているので、言語:日本語、エディション:Windows 10 Home、アーキテクチャ:32 ビット (x86)のISOファイルをダウンロードした。

ISOファイルをSDカードに書き込むために、Windows 7用のインストールメディア作成アプリケーションである Windows USB/DVD Download Tool をダウンロードしてインストールする(Windows 10 メディア作成ツールはディスクを丸ごと初期化してしまうのでハイブリッドインストールメディアの作成には使えない)。※このプログラムの実行には .NET Framework 2.0 が必要なため、そのままでは最近のWindowsにはインストールできない。コントロールパネルの「Windows の機能の有効化または無効化」を使って古い .NET Framework を有効にすること。

Windows USB/DVD Download Toolがインストールできたら次の手順を実行する。

  1. Windows USB/DVD Download Toolを起動する。
  2. Windows 10のISOファイルを選択する。
  3. USB deviceボタンをクリックする。
  4. SDカードのあるドライブを選んで Begin Copying ボタンをクリックする。
  5. なにやら警告されるが気にせずモリモリ進む。

コピーが完了した後、

However, we were unable to run bootsect to make the USB device bootable.

みたいなメッセージが表示された場合は、コマン ドプロンプト (管理者) を開いて、

>bootsect.exe /nt60 E: /force /mbr

のようにしてブートローダーを書き込んでみる(ドライブレター E: は書き込み先SDカードに合わせて変更すること)。

Windows 10インストーラー部分の作成が終わったら、アップルのサポートページ Boot Camp を使って Mac に Windows 7 以前をインストールする などを参考に、インストール対象となるMacの機種に適合する最も新しいWindows サポートソフトウェア(古いMacにはWindows 10用は存在しないので、あきらめてWindows 7/8.1用を使う)をダウンロード、展開してSDカード内にコピーしておく。

作業が完了したら、SDカードを取り出して lock (書き込み禁止ロック)すれば、できあがり。

ここで困りものなのは、アップルのわけのわからない仕様変更により、メディアをロックしてしまうとOS X 10.9 Mavericks以降のインストーラーは機能しない点だ。インストーラー以外のユーティリティープログラムは正常に動作するのでWindowsをインストールするための補助手段として使う分には問題ない。Windows 10のインストーラーはライトプロテクトされたメディア上でも問題なく動作する(それが当たり前だと思う)。

0 件のコメント:

コメントを投稿