HOKYPOKY.BLOG

MacBook (late2008) を64bit起動する

この記事は多少古くなっており、Mac OSX 10.6.5からやり方が少し変わっているようです。
以下のリンクに修正版を丁寧に解説していただいておりますのでそちらをご参考ください。
http://blog.livedoor.jp/gha10771/archives/1209391.html

ボクのマシンはMacBook(late2008)と呼ばれるMacBook Pro “13になる前のモデル。

先日Snow Leopardにアップグレードした。
ほとんどのアプリケーションが64bitで立ち上がっているのは結構気持ちがいいもので、地味なOSアップグレードだったけれども内部はかなり頑張っているんじゃないかなという印象。

MacBook AirやMac mini、そしてボクの持っているMacBookは64bit起動が可能なのに、64bit起動でない。どうやらProと差を付けるためだとかなんだとか、詳しい理由はわからない。

要は、「64bit起動できるマシンなのに出来ないようになっている」ということなのでどうにかこうにかすれば正常に64bit起動できる。

で、端折っていえば64bit起動できた。

以下方法。こういうの見つけてしまう人はほんとにすごい。

  1. /System/Library/CoreServices/boot.efiをリネームしてコピー
  2. コピーしたboot.efiをHexEditorにて編集
  3. /System/Library/CoreServices/に編集したファイルを入れる
  4. アクセス権限を変更
  5. 起動時にboot.efiでなく編集したファイルを読むようにする
  6. 32- or 64-bit Kernel Startup Mode Selector.appより64bit起動モードに設定する

ターミナル.appを利用するのでとっつきにくいがコピペでOKなのでチャレンジしたいところ。
自己責任でお願いします。

1./System/Library/CoreServices/boot.efiをリネームしてコピー

ターミナルを開き以下のコマンドを入力する($は入力しないので注意)。
これは/System/Library/CoreServices/boot.efiをユーザーフォルダにboot-k64.efiとしてコピーするという意味

$ cp /System/Library/CoreServices/boot.efi ~/boot-k64.efi

2. コピーしたboot.efiをHexEditorにて編集

HexEditorは以下よりダウンロード

HexEditor : http://park.zero.ad.jp/pautha/hexeditor.html

ユーザーフォルダにあるboot-k64.efiを開く。
図のように変更する。

3. /System/Library/CoreServices/に編集したファイルを入れる

再度ターミナルより以下を入力。

$ sudo cp boot-k64.efi /System/Library/CoreServices/

ここで

password:

と表示されるので、管理者のパスワード(大体の人は自分のパスワード)を入力する。

4. アクセス権限を変更

システムから読むファイルなのでアクセス権限を変更する。

$ cd /System/Library/CoreServices/
$ sudo chown root:wheel boot-k64.efi

5. 起動時にboot.efiでなく編集したファイルを読むようにする

$ sudo chflags uchg boot-k64.efi
$ sudo bless --folder /System/Library/CoreServices --file /System/Library/CoreServices/boot-k64.efi

6. 32- or 64-bit Kernel Startup Mode Selector.appより64bit起動モードに設定する

A hat full of skyよりhttp://www.ahatfullofsky.comuv.com/English/Programs/SMS/SMS.htmlをダウンロード。

起動したら色々きかれるけど構わずclose。そしてstart in 64bit modeにチェックをいれる。

あとは再起動したら終わり。

参考文献:
http://pc11.2ch.net/test/read.cgi/mac/1244528279/617
http://pc11.2ch.net/test/read.cgi/mac/1244528279/651
http://www39.atwiki.jp/macmini/pages/30.html

  • http://blog.livedoor.jp/gha10771/ のの

    とても参考になりました!
    出来ました!心なしか、キビキビと動くようになった気がします。VMware Fusionが動かないという情報もありましたが、バージョンアップしたためかちゃんと動いています。

    最初、アクティビティモニタでいろいろ64bitと表示されていたので64bitモードで起動しているものと勘違いしていました。
    macbookでは64bit起動できないという記事を見つけて落胆していたのでとても助かりました。

    しかし、こういう情報を見つけて記事にしてしまうHOKYPOKYさんも凄いですね。

    • のの

      しばらく快適に64bit起動していたのですが、気がついたらまた、32bitモードに戻っていました。多分OSのバージョンアップのせいだと思いますが、nijitaroさんはまだ64bit起動できていますか?
      もう一度この方法を試そうと思ってHexEditorを起動しましたが、もともとのboot.efiも変更されてサイズが大きくなっているようですね。

    • のの

      調べたらできるようになりました。こちらを参考にして記事にしてみました。http://blog.livedoor.jp/gha10771/archives/1209391.html

    • http://hokypoky.info/ nijitaro

      ありがとうございます!
      気がついたらボクも32bitになってました。。。

      載せて頂いたURLで出来るようになるんですね。
      参考になります。

  • http://blog.livedoor.jp/gha10771/ のの

    とても参考になりました!
    出来ました!心なしか、キビキビと動くようになった気がします。VMware Fusionが動かないという情報もありましたが、バージョンアップしたためかちゃんと動いています。

    最初、アクティビティモニタでいろいろ64bitと表示されていたので64bitモードで起動しているものと勘違いしていました。
    macbookでは64bit起動できないという記事を見つけて落胆していたのでとても助かりました。

    しかし、こういう情報を見つけて記事にしてしまうHOKYPOKYさんも凄いですね。

  • http://blogs.yahoo.co.jp/william_kapell Kapell

    初めまして。
    お陰様で64bit起動に成功しました。
    かなり反応が早くなりますね。PCオーディオの音質がどうグレードアップするか楽しみです。
    本当に有難うございます。

    リンクさせて頂きます。もし、不都合がございましたら、ご連絡下されば直ちに削除致します。

  • http://blogs.yahoo.co.jp/william_kapell Kapell

    初めまして。
    お陰様で64bit起動に成功しました。
    かなり反応が早くなりますね。PCオーディオの音質がどうグレードアップするか楽しみです。
    本当に有難うございます。

    リンクさせて頂きます。もし、不都合がございましたら、ご連絡下されば直ちに削除致します。

  • violon_TD

    何度か試行して上手くいっていません。もし、わかったらで結構ですが、手順3でパスワードをいれると、Operation not permittedというメッセージがでます。これでも引き続き手順を続けて良さそうでしょうか?あるいはEFIを64に変えることができないということでしょうか?
    Macbookの2,1でEFIは32となっています。プロセッサは64です。2007年頃のリリースマシンです。

  • http://hokypoky.info/ nijitaro

    訪問ありがとうございます。

    まず、Operation not permittedですが管理者としての権限がないのかもしれません。
    管理者権限について確認してください。
    ディスクユーティリティよりシステム権限の修復をしてみるのも手かもしれません。

    次にEFIですが、ボクも詳しいわけでないのでなんともいえませんが、Terminal.appで

    ioreg -l -p IODeviceTree | grep firmware-abi

    を実行して “firmware-abi” = <”EFI64″> (フォントによっては括弧が矢印になってるかもしれません)が含まれたものが表示されないとそもそも64bit化できないようです。

    2007年となるともしかすると対応していない可能性もあります。
    またEFI自体もかなり繊細なのでHexEditorによる編集箇所もちがうかもしれません。

    ちなみにボクは、こんな記事を書いておきながら外部デバイスの関係(特にオーディオ系)があまりうまく動作しなかったので32bitカーネルで動作させています。

    今後ともHOKYPOKYを宜しくおねがいします。

  • violon_TD

    アドバイスありがとうございます。
    早速試してみました。

    “firmware-abi” = <”EFI32″> が返ってきてしまいました。

    ということは64ビット化はできないという事のようですね。
    残念だなー。

    CPUは64ビット対応なのに。

    ありがとうございました。

  • Hide_k

    ここに書いていただいている手順通りに設定しても,うまく64bitカーネルで起動してくれませんでした.
    もし,何かヒントをいただければ幸いです.
    EFIは64の黒マックです.10.6.4です.
    /System/Library/CoreServices/にコピーしたboot-k64.efiの内容を確認しても0x266e8は0×4に変更されていました.
    /Library/Preferences/SystemConfiguration/com.apple.Boot.plistのKernel Architectureはx86_64,Kernel Flagsはarch=x86_64となっています.
    しかし,システムプロファイラで確認すると64ビットカーネルと拡張機能は「いいえ」となっています.
    アクティビティモニタで確認してみてもkernel_taskは32ビットのままです.

    • http://hokypoky.info/ nijitaro

      こちらはアルミのMacBookの話でありMacBook Kuroではできません。
      ちなみに自分もMacBook Kuroを持っていますが64bit化できませんでした。

    • Hide_k

      黒マックはできないんですね.
      返信いただき,ありがとうございました.