web-dev-qa-db-ja.com

2の代わりに3つのubuntu .efiを示すrEFInd

これは実際には問題ではありませんが、なぜ通常の2ではなく3つのubuntuが突然表示されるのか知りたいだけです。grub64.efiとshim64.efiである必要があります。今はgrub64.efiですが、vm-linuz-3.13.0.32-generic.efi.signed by UBUNTU

およびvm-linuz-3.13.0.52-generic.efi.signed by UBUNTU

どうしてこれなの?どちらを使用すればよいですか?私はgrub64.efiを使用していますが、違いは何ですか?他のいくつかを使用する必要がありますか?この変更は、bcmwlをインストールしてWi-Fiを機能させるとすぐに発生しました。


私はLinux 14.04 LTS(Trusty Tahr)を使用しています

ネイティブOSはMac OS X 10.10.3です。

1
TheBro21

答えは、ブートエントリの説明に記載されています。

3.13.0 .2-generic3.13.0 .52-generic、つまり後者はより新しいカーネルをブートします。

これは、新しいカーネルがインストールされたときに古いカーネルイメージを維持するというUbuntuの(他のディストリビューションでも同じ)慣習によるものです。そのため、アップデートが意図したとおりに機能しない場合や、結局のところ起動を拒否した場合は、簡単に元に戻すことができます。

ただし、次のコマンドを使用して、古い汎用カーネルイメージを手動でアンインストールできます。

Sudo apt-get remove linux-image-(old version string)-generic

[〜#〜] attention [〜#〜]:正規表現またはグロブを使用して一度に複数のカーネルをアンインストールしないでください。一度に1つだけ削除し、常にuname -rの出力を確認してください。削除すべきではない現在のカーネルバージョンを提供します。そうでなければ、あなたはすべてのカーネルを削除する単一のタイプミスの危険を冒して、あなたのシステムを起動不可能にします...

2
s3lph

rEFIndは、特定の冗長エントリを自動的に削除するように設計されています。 _shimx64.efi_も存在する場合、これらの冗長性の1つは_grubx64.efi_です。したがって、「[i] tはgrub64.efiおよびshim64.efiである必要があります」という記述は、これらのファイルの一方または両方に対して手動のブートスタンザを作成しない限り、正しくありません。

あなたの場合、あなたは3つのエントリを持っています:

  • _grubx64.efi_-これはUbuntuがインストールしたGRUBバイナリです。これを選択するとGRUBが起動し、Linuxカーネルが読み込まれ、LinuxカーネルのGRUBブートローダーメカニズムを使用して起動されます。 GRUBは、その構成に応じて、独自のメニューを表示する場合としない場合があります。このメニューには、すべてのLinuxカーネルのオプションが含まれている可能性が高く、おそらく他のOSまたは特別な機能のオプションも含まれています。 GRUBメニューからオプションを選択しない場合、おそらく最新の(現在は3.13.0-52)カーネルが起動されます。
  • _vm-linuz-3.13.0.32-generic.efi.signed_-このオプションは、Ubuntu 14.04 LTS(2014年4月にリリースされたバージョン)に同梱されているカーネルである3.13.0-32 Linuxカーネルをロードします。 rEFIndは、カーネルをEFIアプリケーションであるかのように起動し、ブートローダーとして EFIスタブローダー に依存し、GRUBをバイパスします。
  • _vm-linuz-3.13.0-52-generic.efi.signed_-このオプションは前のオプションと同じですが、バグ修正と過去1年間に収集された新機能を含む最新の3.13.0-52カーネルが起動する点が異なります。

実際問題として、あなたはあなたのために最もうまくいくものを使うべきです。ほとんどの場合、最新のカーネルのGRUBオプションとrEFIndオプションを使用すると、ほとんどの方法でシステムが同じように機能します。 dmesg出力のわずかに異なる_Command line:_行など、いくつかの小さな違いがあるかもしれませんが、これらは実際的な効果はありません。 GRUBの構成と_/boot/refind_linux.conf_の内容によっては、他の違いがある可能性があります。または極端な場合には、1つは起動し、もう1つは起動しない場合があります。 GRUBは複雑でデバッグが難しいため、直接カーネルブートを行うと、問題が発生した場合の修正が容易になります。また、何らかの理由で古いカーネルを起動する場合、特にGRUBが独自のメニューを表示せずに起動するように構成されている場合は、rEFIndメニューから起動する方がGRUBから起動するよりも少し簡単かもしれません。 。 OTOH、_/boot/refind_linux.conf_ファイルがない場合、またはファイルが正しく構成されていない場合、GRUBは正しく起動する可能性があり、rEFIndの直接カーネル起動が失敗するか、最適に設定されない可能性があります。

システムの使用とアップグレードを続けると、rEFIndのメニューに追加の直接カーネルオプションが表示される場合があります。使用しないことがわかっているカーネルは手動でアンインストールできます。またはターミナルで_Sudo apt-get autoremove_と入力すると、3つを除くすべてが削除されます(通常、元のカーネルと2つの最新のカーネル)。一般に、少なくとも2つのカーネルを保持することをお勧めします。その理由は、カーネルのバグが時々導入されるため、そのような問題に遭遇した場合に備えて、古いカーネルで再起動するオプションが必要なためです。

使用していないオプションをrEFIndのディスプレイから削除したい場合は、さまざまな方法で削除できます。

  • _dont_scan_volumes_の_dont_scan_dirs_、_dont_scan_files_、および_refind.conf_オプションを使用できます(通常、Ubuntuの_/boot/efi/EFI/refind/_で)。これらのオプションは、実際には削除せずに場所またはファイル名に基づいてメニューから特定のブートローダーを削除します。
  • _scan_all_linux_kernels false_に_refind.conf_を設定できます。これにより、rEFIndは_.efi_拡張機能がないLinuxカーネルを無視します。 (ご使用のカーネルには_.efi.signed_拡張機能があり、このオプションをfalseに設定すると無視されます。)
  • カーネルが常駐するファイルシステムのEFIドライバーを削除できます。このドライバーは通常、Linuxの_/boot/efi/EFI/refind/drivers_x64_にあります。このドライバーを削除すると、Linuxの直接ブートオプションがすべて削除されます。
  • ファイルを完全に削除できます。 Linuxカーネルを直接ブートするエントリを削除する場合、これはではありません。これは、GRUBがそれらのファイルをブートする必要があるためです。 Linux;ただし、GRUBオプションを表示したくない場合や、他に何かが表示されている場合(たとえば、削除したWindowsインストールの古いWindowsブートエントリ)を検討することもできます。ほとんどのブートエントリは、Ubuntuの下の_/boot/efi/EFI/_のサブディレクトリに表示されますが、他の場所にある場合もあります。

説明した3つのエントリを正確に取得している場合、ダイレクトカーネルエントリを削除する場合は、rEFIndをバイパスしてGRUBを直接使用する方がよいでしょう。結局のところ、ほとんど意味がありません。起動オプションが1つだけの起動マネージャーを使用すること。 GRUBエントリを削除することには意味があるかもしれませんが、EFIスタブローダーで問題が発生した場合に備えて、このエントリを使用できるようにしておくことも重要です。

3
Rod Smith