web-dev-qa-db-ja.com

OS X 10.10 YosemiteにrEFIndをインストールする

Arch LinuxでMacbookをデュアルブートしたいので、インストールスクリプトを使用してrEFIndをインストールしようとしましたが、インストール後、rEFIndがまったく起動しないようです。誰かが同じ問題を経験したか、これを修正する方法について可能な解決策がありますか?

8
Rawa

REFIndからの公式の解決策が今あるので、ここで自分の質問に再回答します。したがって、これはこれについて進む正しい方法だと思います。

公式ガイドラインは rEFInd Webサイト にあります。

そこに示されている手順は次のとおりです。

  1. 利用可能な手段を使用してOS Xを起動します。電源投入時にOption(またはAlt)を押し続けると、通常Apple独自のブートマネージャーが表示され、OS Xから起動できます。rEFIndインストールが現在開始されているが、OS Xオプションが表示されない場合は、手順7に進みます。ただし、rEFIndが起動しない場合は、手順2〜7に従ってください。
  2. /EFI/refind/refind.confに変更を加えた場合は、バックアップしてください。
  3. /EFI/refindディレクトリツリーを削除します。今は役に立たず、その存在は混乱を引き起こすかもしれません。
  4. Installing rEFInd page の説明に従って、rEFIndを再インストールします。ただし、必ず--espまたは--ownhfs device-fileオプションを使用してください。後者が望ましいですが、rEFInd専用のパーティションまたは現在起動できないHFS +データパーティションが必要です。
  5. REFIndをインストールしたパーティションがマウントされていることを確認します。詳細は、インストール方法によって異なります。
    • EEFにrEFIndをインストールした場合は、mkdir/Volumes/espの後にと入力しますSudo mount -t msdos/dev/disk0s1/Volumes/espはおそらく機能しますが、ESPが/dev/disk0s1にならない場合があるため、変更する必要がある場合がありますこの詳細。
    • --ownhfs device-fileインストールオプションを使用した場合、ターゲットパーティションは既にマウントされているはずです。通常は/ Volumesの下のどこかにあります。そうでない場合は、それを見つけて、ディスクユーティリティまたはmountでマウントします。
  6. refind.confファイルをバックアップした場合は、新しいrefind.confファイルにコピーできます。ファイルを/Volumes/esp/EFI/refind/--espを使用してESP at /Volumes/esp)にマウントした場合)または/Volumes/Mountpoint/System/Library/CoreServices/(if専用のHFS +ボリュームを使用しました。Mountpointがボリュームの名前になることに注意してください)。
  7. 新しいrefind.confファイルを編集します。このファイルは、前のステップで説明したように配置する必要があります。お気に入りのエディターで、dont_scan_volumes行を見つけます。デフォルトでは、行の先頭に#記号が付いています。この行のコメントを外し、「Recovery HD」アイテムを行から削除します。一部のユーザーは、dont_scan_volumes foo,barのように、1つまたは2つのダミーエントリを入力して機能させる必要があると報告しています。
5
Rawa

私が今有名な「30秒待つ」を回避するための解決策を見つけたことをあなたに知らせたかっただけです;-)

2012年中頃のMacBook Airを持っています。ヨセミテでの起動を高速化するために、言及されたすべての解決策を試しましたが、私にとって最良の解決策は、EFIパーティションのrefindフォルダー名を変更し、refindファイルの名前も変更することでした。

だから、それは与える:

  1. 安全のため、rEFIndのインストール時に./install.sh --alldriversを実行して、すべての「drivers_x64」フォルダーを追加しました

  2. Yosemiteの下のEFIパーティション(on/dev/disk0s1に保存)で、「refind」フォルダの名前を「BOOT」に変更しました

  3. そのフォルダー内で、「refind_x64.efi」の名前を「bootx64.efi」に変更しました

最後の2つのステップで、rEFIndでMacを即座に起動できました。EFIディスクをスキャンするのに30秒ほど待ちません。

6
Jay

Refindをインストールするときに--alldriversを追加するだけで問題を修正しました。ヨセミテデュアルブートが以前と同様に機能するようになりました。高速で、すべてがrefindブートメニューで再調整されます。

install.sh --alldrivers
5
Jeff Artik

実際、Samanthaによって提供される link が最も簡単な解決策を与えるようです:

diskutil list

次のようなものが表示されます:

$diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk0
   1:                        EFI                         209.7 MB   disk0s1
   2:          Apple_CoreStorage                         175.6 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
   4:       Microsoft Basic Data                         70.3 GB    disk0s4
   5:                 Linux Swap                         4.2 GB     disk0s5
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS Macintosh HD           *175.3 GB   disk1
                             Logical Volume on disk0s2
                             41AF7850-5594-4959-A135-582BF79FDE46
                             Unencrypted

次に使用します:

diskutil corestorage revert /dev/disk1

そして再起動し、refindが再び機能するようになりました。

1
xgdgsc

ヨセミテでrEFIndを使用するための回避策を見つけましたが、おそらく最善の解決策ではないことに注意してください。
rEFIndがYosemiteで動作しなくなった理由は、システムのルートパーティションが物理パーティションに存在しないため、ブート時にrEFIndを認識できないためです。そこで、rEFIndをEFIパーティションに手動でインストールしてみましたが、うまくいきました。

手順は次のとおりです。
1。開くディスクユーティリティ、EFIパーティションを選択してマウントします。通常、マウントポイントは/ Volumes/EFIです。
2。デフォルトの引数を使用してinstall.shスクリプトを実行してrEFIndをすでにインストールしていると思います(rEFIndは/ EFIにインストールする必要があります/ refind)。端末を開き、次のコマンドを入力します:_cp -r /EFI/refind /Volumes/EFI/EFI/ Sudo bless --mount /Volumes/EFI --setBoot --file /Volumes/EFI/EFI/refind/refind_x64.efi_

この回避策には欠点があります。 Macbook Airでは、rEFIndメニューが表示されてYosemiteパーティションがメニューに表示されず、リストに表示されるまで40秒かかりました。Linuxブートローダー(grub2efi)とリカバリパーティションのみが検出されました。
Yosemiteで起動する場合は、起動時にOptionを押したまま、Yosemiteパーティションを選択する必要があります。

別の回避策は、USBドライブを使用してサードパーティのブートローダーを起動することです。
たとえば、 このページ を確認してください。スタンドアロンのGRUB2 EFIイメージを作成し、それをUSBドライブパーティション(FAT32形式)の/EFI/boot/bootx64.efiに置くことができます。
長押しオプション起動中、USBドライブはEFIブートと表示されます。 configfile (gpt0,X)/boot/grub/grub.cfgのようなコマンドを使用して、一時的なGRUB2メニューから起動することができます(XはLinuxのパーティションまたは/ bootパーティションです)を使用すると、古いGRUB2メニューであれば、通常どおり機能するはずです。

1
Meow

MacBook(13-inch、Late 2009)、Yosemite 10.10では、Whole-Disk Encryption(FileVault)が有効になっています。そのようなrEFIndをインストールしました:

./install.sh --esp --alldrivers 
mkdir /Volumes/ESP
Sudo mount -t msdos /dev/disk0s1 /Volumes/ESP

そして、refind/refind.confでdont_scan_volumesディレクティブを見つけて、次のようにしました:

dont_scan_volumes foo,bar 

rEFIndはOS Xを起動して正常に回復します:)しかし、Windows 7セットアップフラッシュドライブからはまだ起動できません:(エラーが発生します:

Error: Not Found from LocateDevicePath
....
Error: Not Found from LocateDevicePath
Error: Load Error while (re)opening our installation volume
The firmware refused to boot from the selected volume.

この問題は、ほぼインストールされたWindowsのスナップショットをダウンロードして必要なパーティションに複製し、起動してセットアップを完了することで解決しました。

1
Aldekein

はい。コアストレージのためにrEFIndは機能しません。ディスク全体、つまりすべてのパーティションが単一のボリュームとして管理され、rEFIndはこの「単一の論理ボリュームとしての複数のドライブ上の複数のパーティション」で失われます。

したがって、コアストレージのパフォーマンスまたはrEFIndのどちらかを選択する必要があります。

あなたのオプション:

  • 別のHFSパーティションにrEFIndをインストールする
  • ESP oneにインストールします

rEFIndホームページ を参照してください。

1
Claod

Install.shを実行するときに--easオプションを使用することは、私にとって魅力的でした。

0
AlexanderNajafi

Yosemiteでは、rEFindを/ dev/disk0s1にあるEFIシステムパーティション(ESP)にインストールする必要があります。

(Meowの手順のように)blessを使用して手動でこれを実行するか、--esp rEFindのインストール時のオプション:./install --esp

これに関する問題は、rEFindのドキュメントに記載されているように、ブートプロセスが非常に遅くなることです。rEFindメニューが表示されるまでに時間がかかります。

0
Brean