web-dev-qa-db-ja.com

rEFInd質問:複数のブートアイテムを削除しますか?

Mac ProのrEFIndと同様に、別のドライブ(他のOSでパーティション分割されていない)にUbuntuをインストールしました。私はそれをすべて正常に起動し、rEFIndから問題なく起動することができました。問題は、ブートマネージャーに3つの追加アイテムが読み込まれているので、それを取り除きたいということです。私は答えを探していましたが、まだ何も機能していないようです。 OS X、Windows 7、Ubuntu Grubx64(とはどういう意味でも)の他に、次のものがあります。

boot\vmlinuz-3.11.0-18-generic.efi.signed
boot\vmlinuz-3.11.0-15-generic.efi.signed
ディスクボリューム全体からレガシーOSを起動します

私は人々が「これを試してみてください」と言っているのを見続け、彼らは実際にそれを行う方法についての指示を与えることなく、メソッドを与えるだけです。誰かがこれらを非表示にする方法の簡単な指示を教えてもらえますか?

10
whitecrow1

必要なことを行う方法はいくつかありますが、まず、Ubuntuをさまざまな方法で起動する3つの(または4つの)エントリがあることを理解してください。

  • grubx64.efiエントリはGRUBを起動し、GRUBはLinuxカーネルを起動します(また、設定方法に応じて他の起動用の独自のメニューを提供することもあります)。
  • boot\vmlinuz-3.11.0-18-generic.efi.signedエントリは、GRUBを使用して3.11.0-18-genericカーネルwithoutを起動します。 (カーネル自体に組み込まれている EFIスタブローダー を介して起動します。)
  • boot\vmlinuz-3.11.0-15-generic.efi.signedエントリは、3.11.0-15-genericカーネルを起動します。これは、前のカーネルより少し古いカーネルです。
  • 「Boot Legacy OS ...」オプションmightは、GRUBのBIOSモードバージョンを起動します-それを選択するとどうなるかは説明しませんオプションなので、それがこれを行うか、まったく役立つかは明確ではありません。

いずれにしても、ここでの大きな違いは、GRUBとEFIスタブローダーの違いです。ほとんどの場合、Linuxをブートする両方のアプローチは同じように機能しますが、一方が他方よりもうまく機能する場合もあります。個人的に、私はGRUBが嫌いです。私見それは肥大化しており、不必要に複雑です。 Macでトリプルブートを管理するにはrEFIndが必要になる可能性があるため、これはブートパスの追加ステップでもあります。 OTOH、GRUBはUbuntuを起動する標準的な方法です。 GRUBにはrEFIndに1つのエントリしかありませんが、独自のメニュー(表示するように設定した場合)により、rEFIndで直接起動できる2つのLinuxカーネルのいずれかを起動できます。

個人的には、少なくとも3つすべてのエントリ(GRUBと2つのカーネル)を保持します(少なくともすべてが機能する場合)。その理由は、コンピューターを起動するための複数のオプションが提供されるからです。 1つが失敗した場合、フォールバックとして他のものがあります。システムをアップグレードし、新しいカーネルがリリースされると、カーネルの選択が増える可能性があることに注意してください。リストがその制限を超えると、Sudo apt-get autoremoveを使用してリストを2つまたは3つに維持できます。

エントリを削除する場合、いくつかのオプションがあり、そのほとんどはrefind.conf(Linuxではおそらく/boot/efi/EFI/refindにあります)の編集を伴います:

  • スキャンを避けたいファイル名をdont_scan_filesに追加します。この方法で個々のカーネルを非表示にすることは、新しいカーネルをインストールするときにリストを更新する必要があるため、効率が悪いことに注意してください。ただし、これはGRUBを隠す良い方法かもしれません。
  • 不要なブートローダーが記述されているディレクトリをdont_scan_dirsに追加します。 (たとえば、bootはLinuxカーネルを削除し、EFI/ubuntuはGRUBを削除します。)
  • 不要なブートローダーに関連付けられたボリューム名をdont_scan_volumesに追加します。これはBIOS/CSM /レガシーブートオプションで動作する唯一のdont_scan_*オプションであることに注意してください。関連する名前のサブセットを追加して、そのエントリをブロックします。
  • ディスクベースのBIOS/CSM /レガシーブートオプションを無効allにするには、scanforのコメントを外し、hdbiosnotオプションの中。ただし、これはおそらく望ましくありません。Windows7を起動していると言うので、通常はBIOS/CSM /レガシーモードで起動します。ただし、WindowsをEFIモードでインストールできた場合、これは適切なオプションです。
  • カーネルオプションと将来のすべてのカーネルオプションの両方を削除するには、LinuxファイルシステムのEFIファイルシステムドライバーをdrivers(またはアーキテクチャに応じてdrivers_x64またはdrivers_ia32)から削除できます。 ESPのEFI/refindディレクトリのサブディレクトリ。これにより、rEFIndはLinuxカーネルを見つけることができなくなるため、これらのオプションは表示されなくなります。 GRUBはこれらのドライバーにnot依存しているため、引き続き機能します。
  • BIOS/CSM /レガシーオプションは、rEFIndがディスクのMBRまたはパーティションでブートコードを検出したと判断した場合にのみ表示されます。 「Boot Legacy OS ...」オプションの説明を考えると、rEFIndはおそらくMBRでブートコードを見つけました。 (rEFIndの最近のバージョンのバグは、場所の誤認の原因となります。そのため、バージョン0.8.7を使用していない場合、その識別は正しくない可能性があります。)ただし、このアプローチはDANGEROUS、です。あなたがすでにそれを行う方法を理解している場合にのみ試してみることをお勧めします、それが私が意図的にnotそれを行うための明確な指示を提供する-私はこのタスクを行う方法についての全体の答えを書くことができたが、それはおそらくまだ不完全だろう。

refind.confオプションの詳細については、refind.conf内のコメントおよび rEFInd構成ドキュメントのページ で説明しています。

6
Rod Smith