もどる

BootCampのおぼえがき。

下の方に、rEFIndとMacbookの輝度調整について(2015-2016追記)
更に下にSierraとWin8.1でのメモを追記(2017追記公開2018/07/18)

OSXとWindowsを共存させる。
それだけなら普通にBootCampを利用すれば良いが、運用する際に便利なように
どちらのOSからも参照可能な領域をexFATで作成しておく。

新しい話(くは後ろの方から

何回もやっている割に思い出すのが面倒なのでとりあえずメモしておく

まずはBootCampドライバを落としてく。
BootCampアシスタントを実行し、サポートソフトのダウンロード
にだけチェックをいれ次へ

ドライバ類は直接zipを落としても良いし、個別にメーカから入手でも構わないが
Appleのアシスタントが居ないとキーボードやトラックパッドの設定が出来ないので必要です。

このアシスタントの実行で、OSX側への変更がインストールされる。
ディスクユーティリティを起動して、パーティションを設定する。
普通に2パーティションならBootCampアシスタントで行えるので
ここでは3パーティションとして、OSX, Windows, 共有領域 とする。
OSX以外のWin用に割り当てる領域はとりあえずFATとしておいて構わない。細々とは後で行う。
パーティションの管理だけはOSXで行う。
!パーティションの分割や管理はこの一連の手順でやらないと面倒になる。
OSXではEFIで管理、WindowsはMBRとなるので下手にそれぞれのOSがいじると破綻する。
また、実際には
  1. EFI(非表示),
  2. OSX,
  3. リカバリ(Lion以降/非表示),
  4. Windows,
  5. 共有領域(左図TEMP)
となり
Windowsからは最後の4領域以降は認識できなくなる。調整してWindowsから4領域目を作成すると拡張パーティションと
なり、OSXから参照できなくなる。

WindowsのCDを入れ、OPTIONキーを押し下げながら再起動する。
インストール先の選択は、Lion以降では「ドライブ0パーティション4」となる筈である
選択の出来ない パーティション5 がどちらからも読み書きできる領域とする予定地である。

OSXからパーティションマップを変更している為FATで初期化され、
インストール先と 出来ないだけなので、ドライブ0パーティション4を選択し、フォーマットを押す
フォーマットを行えば、「次へ」が押せるようになるので後は普通にインストール
途中再起動をするが、その時にOPTIONを押し忘れると普通にOSXが立ち上がってしまう。
その場合は、OPTIONを押しながら再起動を行い Windowsパーティション を選択すれば
インストールが続行される。
(2016追記)
EL Cap以降でrEFInd等を入れる場合、リカバリ領域を使うのが簡単なので
OSXとWindowsが正しく動くことを確認してから、リカバリ領域から起動し
rEFIndをインストール、その後でこのリカバリ領域の統合-削除をした方が早い

Installが終わってもLion以降では共有の領域が認識できない。
Windowsのディスク管理からフォーマットすると拡張パーティションとなるので
リカバリ領域を削除し、パーティションが4つに収まるようにする。
ターミナルを立ち上げ diskutil でリカバリパーティションをOSX領域に統合する
以降のリカバリはHDDからではなくインターネットを利用することになる。

ターミナルから diskutil list を実行し、パーティションが5つある事と
パーディーションの順番を確認する。
この disk0s3 を消して disk0s2 に統合する。

$diskutil eraseVolume HFS+ Blank /dev/disk0s3
これでリカバリ領域の中身が空になり
$diskutil mergePartitions HFS+ Lion disk0s2 disk0s3
これでリカバリ領域がOSX領域に統合される。
WindowsでBootしなおすとFAT領域が見えるようになる筈なので
これをフォーマットし直して完了。
FAT(32)では4G以上のファイルが作成できないのでNTFSが良いのだが
Lion以降ではNTFSへの書き込みが出来なくなったので、exFATを使うと
どちらからも読み書きが可能で、4GB以上のファイルを置くことが出来る。
Windowsから対象のドライブを右クリックしてフォーマットか
ディスクユーティリティでフォーマットを行う。
フォーマット形式にNTFSしか表示されない場合があるので、その時はコマンドプロンプトを
管理者として実行(コマンドプロンプトアイコンを右クリック)し、formatを実行する。
>format e:(ドライブ名) /fs:exfat
FATNTFSexFAT
Leopard?×exFATは10.6以降?
Snow LeopardexFATを作成すると壊す事がある
ntfsmounterを使うと楽
LionNTFSに書き込めない

XPexFATにはKB955704が必要
VistaexFATはSP1以降
7,8ま、FAT,exFATはMSなので。ね。
起動のたびにOPTIONを押し下げるのが面倒なのでrEFItをインストールする。
これは普通に持ってきて、OSX上でインストールをすれば良い。
メンテナンスが止まりrEFIndへ移行している様であるがノートの場合は要注意
蓋を閉じたスリープから休止への移行(safesleep?)に必要なツールが無く、失敗する事がある。
(フォーラムでたまに話題に出るがパッケージに反映されている様では無い?2013年後半時点 たとえば この へん)
rEFItでは rEFIt Blesser がその間を取り持つツールとしてインストールされる
スリープから休止に移行する時に電源が入り、これを失敗するのが原因だかで、efi->blesserと繋いで休止にさせるとか何とか?

あとの手は pmset で休止のモードをハイブリッドにしなければこの問題は起きなかったはず。

2015/06/04追記

Yosemite にアップデートしたらなにか挙動が変だったので rEFIt を rEFInd にした。
Ver 0.8.3 ではEFI(ESP)領域へインストールすると起動に時間がかかるという問題があった。
(電源をいれてrEFIndのメニューが出るまで30秒ほどかかるという問題)
・NTFSだかの開始セクタに問題があるからフォーマットし直せば良い。
・インストール先にespを指定せずOSXの領域(HFS)を指定すれば良い。
といった 解決方法が出た模様。

現在この問題は解消しているのでこれからインストールする人はrEFIndを入れると良い。
先に書いたスリープの問題も解決しているようなので割と快適。
また起動メニューにbootの付いていないexFATが表示されなくなってスッキリ。

rEFIndのインストールは Getting rEFInd から A binary zip file を選んでダウンロード
zipファイルを展開したディレクトリをターミナルで開いて、そこからインストールスクリプトを実行すればok
$ ./install.sh

すでにインストールしてあるrEFItをアンインストールするにはEFI領域をmountして
ファイルの削除を行えば良い。
2015/10/15(12/29)追記

El Capitanが出たのでアップデートしたところ、
システムの保護が強化されたのでrEFIndのインストールに失敗する様です。

インストールするにはこの特権保護を超える必要があり、それには
1.SIPを無効にしてからインストール
2.リカバリモードなどからインストール
この2種類の方法があるようです。

SIPを無効にするには
リカバリモードで起動して、メニューバーから「ターミナル」を起動し
$ csrutil disable
を実行し、再起動することでSIPが無効となります。
起動後はrEFIndをインストールする事が出来ます。インストール後には
$ csrutil enable
として有効にするべきでしょう。が諸々不安なのでそのまま使っています。

2の方法はこのリカバリモードのターミナルからcsrutilを実行する代わりに
インストールシェルを直接実行してしまう方法です。
HDDにあるリカバリ領域を開放して、ネットからリカバリを持ってくると
csrutilはいませんのでSIPを変更できません。
そこでターミナルから直接rEFIndのインストールシェルを実行してインストールしてしまいます。
/Volume/(ディスクのボリュームラベル名)/User/Download などに
展開済みのrEFIndに移動してインストールです。

この時、日本語入力はできませんのでボリューム名は適当なアルファベットにしておく必要があります。
当然zipも解凍できませんので普通に使っているOSX上で解凍しておく必要があります。
インターネットからリカバリをダウンロードすると2時間程度かかりますので
リカバリ領域を削除する前に実行しておくほうが良いかもしれません。

2016/11/17 蛇足

MacBookで輝度調整が動かない場合

通常Bootcampのドライバでは問題が起きないが、グラフィックチップのリファレンスドライバを
入れた場合、輝度調整が行えないことがある。
それぞれ、グラフィックドライバの方で輝度調整が無効にされ、OSからの変更を受け取らない様になっているようです。

nVidia、AMDそれぞれレジストリに変更を加えることで輝度の変更が有効になります。

nVidiaの場合 (MacBook2008 - GF9400M / Win8.1 で確認)
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000]
"EnableBrightnessControl"=dword:00000001

AMDの場合 (MacBookProRetina2015 - M370X / Win8.1 で確認)
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000]
次の名前の2つのキーについて、存在していれば共に0にする。
MD_EnableBrightnesslf2
KMD_EnableBrightnessInterface2

また、M370XでCrimsonドライバがはじかれる場合は、.infファイル中の次の行をコメントアウト(or 削除)する
ExcludeID=PCI\VEN_1002&DEV_6821&SUBSYS_0149106B
(Bootcampdrivers.comというサイトがある)2018/07/18追記


AMDの輝度調整についてはここを参考にした。
動いた例ではControlSet001に対して変更をかけ、私も同じ設定で動くことを確認出来たので触っていないが
うまく動かない場合は、CurrentControlSet以下に変更を行った方が良いのかもしれない。
(ControlSet001/002はCurrentControlSetのバックアップ(切り替え)との事)



regファイルを使うには、
nVidia、GeForceの場合は次を

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000]
"EnableBrightnessControl"=dword:00000001

AMD、Radeonの場合は次を

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000]
"KMD_EnableBrightnessInterface2"=dword:00000000


それぞれテキストファイルに保存し、拡張子を.regにしてレジストリエディタで読み込んでみてください。
使用に関して自己責任で…

2017/10 MacBook Pro(13-inch, Mid 2012)に再インストールする羽目になったのでその時のメモ

  • インストールするOSはmacOS SierraとWindows8.1
  • BootCampユーティリティからではOSX+Win8.1にしか出来ない。(後ろにfatを作れない)
    また、Windowsのインストール時にパーティションの解放をし、2分割してもOSXからは見えない。
  • BootCampを使わずにインストールする場合、ディスクユーティリティで3分割にする際にOSX,FAT,FATとするとMBRに手が入りWindowsのインストーラが「このHDDはGPTでは無い」とインストールすることが出来ない。(OSXごと再フォーマットへ)
  • ディスクユーティリティで分割する際に、全てOSX用として分割すればGPTとして処理はされるがWindowsで管理できるパーティションは無いのでフォーマットが出来ない。
  • この後Windowsのインストール時にshift+f10でコマンドプロンプトを開きdiskpartコマンドで領域の開放と確保を行えばEFIモードとしてインストールすることが出来る。Dドライブもこのときに変換しておく事。(インストール後にパーティション間にギャップが出来ていたので詰める目的でDを解放、再確保としたらOSXが起動しなくなった。Core Storageとの兼ね合いと思われる)
    大体この様な感じで実行
    
    diskpart
    >select disk 0
    >list partition
    >select partition 4        <------ Windows用領域
    >delete partition
    >create partition primary
    >list partition
    >select partition 5        <------ Dドライブ用
    >delete partition
    
    
  • 上記手順でインストールしたところで、MBP2012(HDD+DVD最終モデル)はEFIにきちんと対応していないのでサウンドドライバが当たらず音が出ない。->レガシー推奨(振り出しに戻る)
  • 試行錯誤の結果としてMavericksをインストールし、FATで3分割、WindowsをインストールしてからSierraへアップデートとした。
  • インストール後にリカバリ領域を統合しようとするとCore Storageの影響で統合することが出来ない(解放は可)
  • Core Storageの論理ボリュームを物理パーティションへ戻すには次の通り。 マイナビニュースの新・OS X ハッキング!を参照
    
    $ diskutil cs revert disk1
    
    

結論として
  • ディスクユーティリティの変更(El Capitan辺り?)でGPT/MBRの扱いが異なる
  • EFI、Core Storage、Windowsからとそれぞれで管理領域の触り方が異なる
  • MBP2012はEFI非対応(重要)
  • インストールが終わって落ち着いたらHigh Sierraが出たorz(APFS...また全初期化から環境作るの面倒だからしばらくパス)


・EFIインストールの場合の流れ(多分この手順で良いと思う。EFI非対応だったので追試はしていない)
Sierraをインストール
パーティションをOSX,OSX,OSXで確保(FATを作るとGPT非互換となり詰む)
Core Storageを物理パーティションへ変換
optionを押しながらCD bootし、Windowsインストーラを実行
shift+f10を押しコマンドプロンプトを開き、diskpartでosx領域をwinの領域へとする。
(両方解放してから確保をせず、Cの分を解放したら確保、次いでDの分を解放し確保とすると計算が楽 )
後はGUIに戻りインストーラでNTFSとしてフォーマットしてインストール再開。
インストールが終わったらコマンドプロンプトからformat ドライブ: /fs:exfatとしてフォーマット
OSXに戻り、diskutilでリカバリ領域をOSXに統合

・レガシーインストールの場合
Mavericks辺りをインストール
パーティションをOSX,FAT,FATで確保(この頃のディスクユーティリティではレガシーとしてインストール可)
optionを押しながらCD bootし、Windowsインストーラを実行
普通にGUIでNTFSとしてフォーマットしてインストール続行
インストールが終わったらコマンドプロンプトからformat ドライブ: /fs:exfatとしてフォーマット
OSXに戻り、Sierraへアップデート
Core Storageを物理パーティションへ変換
diskutilでリカバリ領域をOSXに統合

spotlight検索や、time machineのバックアップ対象からWindows領域や共有領域を外しておいた方が、速度が遅くならなくて良い。
以上