2017/08/16

初代Mac Pro 2006でEl Capitanのインストール後Recovery HD(復元ディスク)から起動しない

初代Mac ProはMac OS X10.7までしかインストールできず、それ以降は裏技的な方法でインストールするしか方法がありません。
自分もPC/AT互換機(一般的にはWindowsなどが動くPC)にMacOSをインストールするためのChameleonを使用して10.9を使っていたのですが、これが非常に面倒くさい。
一度動いてしまえば楽なのですが、再インストールなど通常の管理に一手間も二手間もかかるシロモノ…まあイレギュラーで無理やり動かしているので当然なのですが。

そういうものだろうとバージョンアップを諦めていたのですが、Apple IDの2ファクタ認証がEl Capitan以降しか使えないことからググってみると、なんと非常に簡単にインストール出来ることが分かり、早速試してみました。

インストール方法は申し訳ないのですがネットに沢山ありますのでそちらを御覧くださいませ…。(ビデオカードの交換とパッチを当てたboot.efiの置き換えのみ)

さて、無事インストールできたものの起動時コマンド+Rで復元ディスクから起動しない…。
こんなことしているようなギークな方たちは復元ディスクがなくても問題ないと思いますが、単純に気持ち悪いのと、セキュリティの関係で使えなくなったXtraFinderを使うために復元ディスクから起ちあげ、そこからターミナルを呼び出し
csrutil enable --without debug
と打ち込んで設定を変更する必要があったのが今回の発端です。
参考:Mac OS X El CapitanのSIPを最低限オフに設定 やっぱりXtraFinderはいいね! | ザ サイベース


さて本題です。

ターミナルで
diskutil list
パーティション一覧を表示します。
この中からRecovery HDを探し、一番右の識別子…この場合だとdisk0s3を見てください。
次にRecovery HDをマウントします。
sudo diskutil mount disk0s3
disk0s3の部分は表示されたものに書き換えてください。

Recovery HDがマウントされたと思うのでFinderで中を見てみます。
グレーになっているものは不可視ファイルですので、通常は見えません。
この中にあるboot.efiをGitHub - Piker-Alpha/macosxbootloader: Pike's bootloader にあるboot.efiと置き換えます。El Capitanインストール方法と同じです。
ただ、これもロックがかかっているので
sudo chflags nouchg
+boot.efiをドラッグし解除します。
ロックを戻すには
sudo chflags uchg

これで再起動時にコマンド+Rで復旧ディスクから起動できるようになります。
ただ、不可視になっているBaseSystem.dmg…これはOS再インストールに使うもので、この中にEl Capitanインストールと同様の物が入っていますので、再インストールしたい場合はこれも置き換える必要があります…が!このディスクイメージは読み込み専用になっていますので読み書き可能な状態にしなければ2つのboot.efi
/Volumes/OS X Base System/usr/standalone/i386/boot.efi
/Volumes/OS X Base System/System/Library/CoreServices/boot.efi
を置き換えることができません。
もしかしたら直接変換する方法があるかもしれませんが、なければディスクユーティリティで読み書き可能な複製を作ってから置き換え、更に読み込みの速い読み出し専用ディスクイメージとして書き戻す手間が必要となります。
面倒なのでこれは無視しようと決めました笑

最後に、ポストと関係ないですがうちの初代Mac ProのGeekBench4のCPUリザルトです。マルチコアだけならまだ頑張ってる…。