macOSとlinuxのデュアルブート トラブル

MacBookmacOSlinuxデュアルブートにしていたが,macOSのほうをアップデートしたら,refind(デュアルブートにするためのツール)が消えてしまい,linuxがブートできなくなってしまった.


リカバリーモードを利用して復旧させる方法のメモは下記.


リカバリーモードの起動
Macの電源を入れるときに,

Commandキー + Rキー

も押し続ける.通常の起動と同じようなプログレスバーが現れるが,少し待つとリカバリーモードになる(「macOSユーティリティ」のウィンドウが表示される)


SIP(System Integrity Protection)を無効化
リカバリーモードが起動したら,上部のメニューの「ユーティリティ」から「ターミナル」を選択し,起動する.

・ターミナル内で,下記のコマンドを入力

bash-3.2# csrutil disable

成功すると
Successfully disabled System Integrity Protection. Please ....
が表示される.


●refind再インストール
・ターミナルから,/refind-bin-0.12.0のフォルダを探し,refind-installを実行する.
(今回は,/Volumes/ディスク名/refind-bin-0.12.0 にあった)

bash-3.2# refind-install
...
Installing rEFInd on macOS...
などのメッセージが表示される.

SIPを元に戻す
下記のコマンド実行
bash-3.2# csrutil enable
成功すると
Successfully enabled System Integrity Protection. Please ....
が表示される.

これで再起動するとブートメニューが復活した.


●補足:ブートメニューの設定
macOS起動後に,ターミナルから「sudo mountesp」を入力.
「Volumes/ESP」がマウントされるので,
「/Volumes/ESP/EFI/refind/refind.conf」の設定ファイルを編集する.
・たとえば,今の環境では「Default_selection 2」と設定すると,linuxが選ばれる.Timeoutも短めに設定.
これにより,再起動したときに,linux自動起動できる.