ブートローダrEFIndをmacに導入する

Mac PCでUbuntuやWindowsなど、OS X以外OSを起動するための必需品と言えばrEFInd。
rEFIndを用いれば、起動時にどのOSを立ち上げるかを選択できるようになります。

今回はこのブートローダーrEFIndをMacに導入する手順について説明していきます。

ブートローダーとは

ブートローダーとは,PCを起動する際にOSをハードディスクから起動するプログラムのことです。

macを起動すると自動的にOS Xが起動すると思いますが、macにubuntuやwindowsなどを入れ、複数のOSが混在している際に、どのOSで起動するかを選択する必要があります。
PC起動時に、どのOSを起動するかを選択する役割を担っているのがブートローダーです。

ブートローダrEFIndの導入

MacではStartup Managerという起動OS選択ソフトがデフォルトで備え付けられています。
起動直後(電源ボタンを押した直後)にoptionキーを押すことで起動できます。
が、Startup ManagerではUbuntuのOSを発見することはできません

スタートアップマネージャーを起動すると、以下のように起動するディスクの候補が出てきます。
しかし、UbuntuOSは選択肢に出てきていません。

どうしてこういう仕様となっているのかは分かりませんが、Ubuntu OSが見えない以上Startup ManagerでUbuntuを起動することはできません。

そこで登場するのがブートマネージャーrEFIndです。
rEFIndを使用することでMacのStartup Managerからは見えなかったUbuntu OSを立ち上げることができます。

rEFIndのダウンロード

まずはこちらのサイトからA binary zip fileをクリックしてrEFIndをダウンロードします。

http://www.rodsbooks.com/refind/getting.html

ダウンロードフォルダにrefind-bin-0.11.4というフォルダをダウンロードすることができたと思います。
バージョンは違っているかもしれませんので、各自で読み替えてください。(2019年4月現在のrefindの最新バージョンはrefind-bin-0.11.4)

筆者の環境では、Mac OS Mojave & refind-bin-0.10.8で動作することを確認しています。
(筆者がrefindを導入した時点での最新バージョンがrefind-bin-0.10.8だったため。)
(おそらく、最新バージョンのrefindでも上手くいくと思います。)

このフォルダの中にrefind-installという実行ファイルがあるので、それを実行すればrEFIndをインストールすることができます。
しかし、セキュリティの観点からMacを普通に起動している状態でのインストールはうまくいきません

Mac OS通常起動時にrefindのインストールを実行しようとすると、
“Could not set boot device property: 0xe00002bc”
というエラーメッセージが表示されます。
これを回避するために、Macをリカバリーモードで起動してrEFIndをインストールする必要があります。

リカバリーモードでの起動

セキュリティの観点から、通常起動状態でmacにrEFIndをインストールすることはできないため、
macにrEFIndを導入するためにはmacをリカバリーモードで起動する必要があります。
Macの電源を入れた直後に command + R を押し続けることで、リカバリーモードでMacを立ち上げることができます。

リカバリーモードでの起動には少し時間がかかるので、しばらく待ちましょう。

起動すると、以下のような画面が表示されます。
トップバーのユーティリティを選択し、ターミナルを起動します。

refind-installの実行

このターミナル上で先ほどダウンロードしたrefindのフォルダ内にあるrefind-installという実行ファイルを実行します。
コマンドの先頭にあるドルマークは、ターミナルで実行しますという記号ですので、実際に打ち込むのは
/Volumes~ 以降の文字列になります。

コマンド中の <username> の部分とrefindのバージョンについては各自で該当のものに置き換えてください。

インストールしますか(YES/NO) ?と聞かれるので、
Y をタイプしてエンターキーを押します。

“Installation has completed successfully.”
と表示されて入れば、rEFIndのインストールは成功です。

インストールが成功したら、ターミナルを閉じ、一度PCを再起動しましょう。
再起動すると、起動直後に以下のような画面が出てくると思います。

このような画面となれば無事rEFIndのインストールは成功です。

ちゃんとOS XとUbuntu両方のOSが見えていることが確認できると思います。
(筆者の環境ではwindowsも入っているので、windowのアイコンも表示されています。)
あとは、起動したいOSのアイコンを矢印キーで選択し、Enterで決定します。

これで起動毎にどちらのOSで起動するかを選択できるようになりました。

ちょっとした注意事項

今回のmacOS HighSierra -> Mojaveと言うようなmacOSの大幅なアップデートを適用した場合、rEFIndが使えなくなる(起動時にrEFIndのOS選択画面が表示されずに、macOSが立ち上がってしまう)ことがあります。

その際はもう一度

  • リカバリーモードで起動
  • refind-installの実行

の手順を踏めば使えるようになります。

macOSの大幅アップデートはそう頻繁にはありませんが、このようなことが起こることを頭の片隅に入れておくと良いでしょう。

追記
Ubuntuでupdate upgradeをしたタイミングでも同様にrEFIndが起動しなくなることがありました。(その際は自動的にubuntuで起動してしまいました。)
その時は上に記載した通り、もう一度リカバリーモードでの起動 → refind-installの実行を行えば、元に戻ります。

おまけ。クソダサいrEFIndのテーマを変更する

rEFIndのデフォルトのテーマは、なんというか使い心地が悪いので、カスタマイズしていきます。

rEFIndのテーマをカスタマイズする方法!

皆さん、無事rEFIndを導入することができましたでしょうか。
以上、Macにrefindを導入する手順についてでした。