Macを64bitカーネルで起動させる設定
Macを64bitカーネルで起動させるためのドキュメントです。
ハードウェア自体は対応しているが、標準で64bitカーネルでの起動に制限をかけている機種に対しての設定です。
MacPortsをインストールしていることを前提条件とします。
注意事項(2011年03月14日追記)
10.6.0 〜 10.6.4で有効な設定です。
カーネルが更新されたので、10.6.5以降では設定が異なります。
検証環境
OS | Mac OS X 10.6.4 Snow Leopard |
Hardware | Mac mini with Snow Leopard Server(Late 2009) |
Hardware | MacBook 13-inch(Aluminum Late 2008) |
バイナリエディタのインストール
$ sudo port install bvi
boot.efiの編集
$ cd /System/Library/CoreServices/ $ sudo cp -a boot.efi boot64.efi $ ls -lO boot* -rw-r--r-- 1 root wheel uchg 319152 7 28 03:01 boot.efi -rw-r--r-- 1 root wheel uchg 319152 7 28 03:01 boot64.efi $ sudo chflags nouchg boot64.efi $ ls -lO boot* -rw-r--r-- 1 root wheel uchg 319152 7 28 03:01 boot.efi -rw-r--r-- 1 root wheel - 319152 7 28 03:01 boot64.efi
Mac mini編
$ sudo bvi -b 0x266DB -e 0x266DB boot64.efi :set memmove インサートモードがデフォルトではOFFになっている。 x で削除。 i で編集開始。80と入力。Esc。 :wq
MacBook編
$ sudo bvi -b 0x266E8 -e 0x266E8 boot64.efi :set memmove インサートモードがデフォルトではOFFになっている。 x で削除。 i で編集開始。04と入力。Esc。 :wq
$ sudo chflags uchg boot64.efi $ ls -lO boot* -rw-r--r-- 1 root wheel uchg 319152 7 28 03:01 boot.efi -rw-r--r-- 1 root wheel uchg 319152 7 29 04:01 boot64.efi
boot.efiの置き換え
$ bless --info finderinfo[0]: 135 => Blessed System Folder is /System/Library/CoreServices finderinfo[1]: 209998 => Blessed System File is /System/Library/CoreServices/boot.efi ※ この行に注目する。 finderinfo[2]: 0 => Open-folder linked list empty finderinfo[3]: 0 => No alternate OS blessed file/folder finderinfo[4]: 0 => Unused field unset finderinfo[5]: 135 => OS X blessed folder is /System/Library/CoreServices 64-bit VSDB volume id: 0xC03A84C8CD9E8B50 $ sudo bless --folder /System/Library/CoreServices --file /System/Library/CoreServices/boot64.efi $ bless --info finderinfo[0]: 135 => Blessed System Folder is /System/Library/CoreServices finderinfo[1]: 578969 => Blessed System File is /System/Library/CoreServices/boot64.efi ※ この行に注目する。 finderinfo[2]: 0 => Open-folder linked list empty finderinfo[3]: 0 => No alternate OS blessed file/folder finderinfo[4]: 0 => Unused field unset finderinfo[5]: 135 => OS X blessed folder is /System/Library/CoreServices 64-bit VSDB volume id: 0xC03A84C8CD9E8B50
ブートオプションの設定
$ sudo nvram boot-args="arch=x86_64" $ nvram boot-args boot-args arch=x86_64 $ sudo reboot
32bitカーネルに戻す方法
$ sudo nvram -d boot-args $ sudo reboot