Linuxで破損したGRUBブートエントリを削除する方法

破損した GRUB ブートエントリを削除するには、まずそのエントリを作成した原因を特定し、次にソースファイルから GRUB メニューを再生成します。Ubuntu と Debian では、 を実行します。Fedorasudo update-grubと Arch では、異なるコマンドを使用します。生成された から直接行を削除しないでくださいgrub.cfg。後続のアップデートで再作成される可能性があり、誤った場所を編集するとシステムの起動が困難になる場合があります。

ブートエントリの種類を特定する

GRUBメニューには、Linuxカーネル、検出された他のオペレーティングシステム、カスタムエントリ、およびファームウェア設定オプションが表示されます。最後の項目(多くの場合「UEFIファームウェア設定」と表示)は、破損したオペレーティングシステムのエントリではありません。古いカーネルとリカバリオプションも、アンインストールされたOSのエントリとは異なります。システムが正常に起動することを確認するまでは、少なくとも1つの正常なカーネルとそのリカバリオプションを保持しておいてください。

GRUBメニューには、Linux、Windows、廃止されたU​​buntuのエントリ、およびUEFIファームウェア設定が含まれています。
不要なラベルがオペレーティングシステムのエントリなのか、それともファームウェアの設定オプションなのかを確認してください。

/etc/default/grubGRUBは通常、設定ファイルやスクリプトなどからメニューを構築します/etc/grub.d/。メインメニューgrub.cfgは生成された出力です。GNU GRUBのマニュアルには、この生成された設定の流れが説明されています。

オペレーティングシステムを削除した後にGRUBを再生成する

別のオペレーティングシステムをアンインストールしたばかりの場合、またはカーネルパッケージを削除した場合は、まずメニューを再構築してください。使用しているGRUBメニューのあるLinuxインストール環境でターミナルを開き、そのディストリビューションに対応するコマンドを実行します。

配布メニューを再生成する
UbuntuまたはDebiansudo update-grub
Fedora(最新リリース)sudo grub2-mkconfig -o /boot/grub2/grub.cfg
Arch Linuxsudo grub-mkconfig -o /boot/grub/grub.cfg

UbuntuとDebianのドキュメントでは、メニューファイルを書き込むためupdate-grubのヘルパーとして実行されます。Fedora 34以降では、メインの設定としてを使用します。 にある小さなUEFIポインターファイルを上書きしないようにしてください。Arch Linuxのドキュメントには出力パスが記載されています。その他のディストリビューションについては、そのディストリビューションの最新のGRUBドキュメントに従い、設定されている出力パスを使用してください。grub-mkconfig/boot/grub2/grub.cfg/boot/efi/EFI/fedora/grub.cfg/boot/grub/grub.cfg

ターミナルコマンド「sudo update-grub」でGRUBメニューを再生成します。
スキャン結果とステータスメッセージはシステムによって異なります。このコマンドはUbuntuとDebianで生成されたメニューを再構築します。
Fedoraのターミナルで、grub2-mkconfigが/boot/grub2/grub.cfgに書き込んでいる様子が表示されている。
現在の Fedora リリースでは、生成された設定を に書き込みます/boot/grub2/grub.cfg。
Arch Linuxのターミナルで、grub-mkconfigが/boot/grub/grub.cfgに書き込んでいる様子を表示しています。
Arch Linux は出力パスgrub-mkconfigとともに使用します/boot/grub/grub.cfg。

コマンドの出力結果を確認し、エラーや削除したオペレーティングシステムへの参照がないか確認してください。コマンドが正常に完了してから再起動してください。不要な項目が削除されていれば、手動でメニューを編集する必要はありません。

エントリーが戻ってきた場合

自動検出は、必要ない場合のみ停止してください。

os-proberGRUB は、他のオペレーティングシステムを検出してメニューに追加するために使用できます。古いインストールが繰り返し検出される場合は、接続またはマウントされた別のパーティションにそのインストールがまだ存在しないことを確認してください。GRUB が他の検出されたオペレーティングシステムを一覧表示しないようにするには、バックアップを作成し/etc/default/grub、そのファイルに次のオプションを設定してください。

GRUB_DISABLE_OS_PROBERをtrueに設定したGRUBデフォルトファイル
この設定を有効にすると、他のオペレーティングシステムの自動検出が無効になります。そのため、これらのエントリが不要になった場合にのみ使用してください。
GRUB_DISABLE_OS_PROBER=true

ファイルを保存し、上記のディストリビューション用のコマンドを使用して GRUB を再生成してください。この設定により、現在使用していない Windows インストールを含む、自動的に検出されたすべての非最新システムがメニューから削除されます。デュアルブートが必要な場合は、OS 検出を有効にしたまま、古いパーティションまたは検出ソースを修正してください。Arch Linux GRUB ガイドでは、os-proberマウントされたパーティションが生成されるエントリにどのように影響するかを説明しています。

手動で追加したエントリを削除します

カスタムエントリは、/etc/grub.d/40_customまたはなどのソースファイルに保存できます/boot/grub/custom.cfg。これらのファイルを調べて、不要になったmenuentryブロックを探します。そのブロックのみを削除します。を編集する場合は40_custom、既存のヘッダーと実行可能スクリプト行はそのまま残します。その後、メイン構成を再生成します。Arch のガイドには、カスタムエントリの保存場所が両方とも記載されています。

/etc/grub.d/40_custom にあるカスタム GRUB メニューエントリを表示するテキストエディタ
40_custom手動で追加されたエントリは、生成されたファイルではなく、などのソースファイルに記述する必要がありますgrub.cfg。

生成されたメニューを変更せずに確認するには、メニューエントリ行を検索します。ディストリビューションに合わせてパスを調整してください。Fedora のメインファイルは にあります/boot/grub2/。

GRUB設定からメニューエントリ行を一覧表示する読み取り専用のgrepコマンド
この読み取り専用のチェックは、表示されているメニューラベルと生成された設定を照合するのに役立ちます。エントリを削除するものではありません。
grep -n 'menuentry' /boot/grub/grub.cfg

古いカーネルエントリの場合

カーネルエントリは通常、システムにインストールされているカーネルから作成されます。不要なカーネルは、ディストリビューションのパッケージマネージャを使用して削除してください/boot。メニューテキストやファイルを手動で削除しないでください。実行中のカーネルと、少なくとも1つの正常に動作するフォールバックカーネルは残しておいてください。その後、GRUBを再生成し、メニューを再度確認してください。

エントリがUEFIブートメニューにある場合

ラベルがGRUB内ではなくコンピュータのファームウェアブートピッカーに表示される場合、それはGRUBのメニューとは別に保存されているUEFIブートマネージャのレコードです。UEFIsudo efibootmgr -vブートされたLinuxシステムでは、以下のコマンドでこれらのレコードを調べることができます。

efibootmgrの出力には、BootCurrent、BootOrder、およびUEFIブートエントリの一覧が表示されます。
UEFIファームウェアの記録は、GRUBの画面メニューのエントリとは別個のものです。

efibootmgrのマニュアルには、このツールで UEFI ブートレコードを削除できることが記載されています。ラベルが見慣れないからといってエントリを削除しないでください。まず、そのローダーを特定し、それが現在または唯一有効な Linux ブートパスではないことを確認してください。特定の古いレコードを確認した場合は、マニュアルの削除形式は でsudo efibootmgr -b XXXX -B、 をXXXX正確な 16 進ブート番号に置き換えてください。このコマンドはファームウェアデータを変更するものであり、GRUB のメニューを編集するものではありません。

結果を確認する

メニューを再構築したり、カスタムソースエントリを削除したりした後は、再起動して、目的のLinuxシステムが起動することを確認してください。古いOSエントリが再び表示される場合は、その発生源(OS検出、カスタムメニューファイル、インストール済みのカーネルパッケージ、または別のUEFIファームウェアレコード)を再確認してください。生成された構成を直接編集することは避けてください。ソースを修正して再生成することが、永続的な修復方法です。

(22) コメント

  1. 佐藤 花子 -

    具体的な手順が記載されていて、すごくわかりやすかったです。今まで自分でやったことがなかったけど、これで挑戦できそう

  2. 椒目 俊也 -

    色んな方法があると思いますが、これが一番シンプルで良いですね。惜しみなくシェアしてくれてありがとう

  3. 高野 力 -

    Grubの設定を手動で直せるのはすごいことです。意外と難しそうだと思ってましたが挑戦してみます

  4. タカシ -

    Linuxでのエラーは本当に悩みのタネです。みんなが解決に向けて情報を共有できるっていいですね

  5. 遠藤 健 -

    手順を実践してみたが、途中でつまずいた。誰か助けて!

  6. ジャスミン -

    解説がとても丁寧ですね!これから試してみます

  7. いぬまる -

    興味深い記事ですね!私もLinuxでいろいろやってみたいと思います

  8. 名取 夏美 -

    シンプルだけど、効果的な記事ですね!実体験を元にしています。これからも参考にさせていただきます

  9. 二階堂 ひかり -

    具体的なコマンドと手順があるのがとても良かったです。この方法で自分も成功したいです!

  10. 山本 太郎 -

    Grubの削除方法を知りたいと思ってました!おかげさまで、一歩前進できそうです

  11. 花井 晴美 -

    Grubの知識が増えて嬉しい!助けが必要なときにこの記事が思い出されます

  12. 森 本 -

    手順が非常に明確で、特にコマンドが役立ちました。これでPCが復活できるといいな

  13. 山田 太郎 -

    この記事は本当に役立ちました!LinuxのGrubブートエントリを削除する方法を探していたので、非常に助かりました。ありがとう!

  14. 田淵 直樹 -

    踊ってしまうくらい嬉しかった!Linux初心者だけど、この情報のおかげで自信がついた。

  15. 中村 発 -

    ちょっとした情報ですが、ブートエントリ削除の前にバックアップを取るのは忘れないほうがいいですよ

  16. 小林 猫 -

    この手順がうまくいくことを願っています!もし他に間違った部分があれば教えてほしいです。

  17. 高橋 玲子 -

    私も同じ問題に直面していました!教えてくれて本当に感謝です。次回も参考にさせてもらいます

  18. 佐々木 ゆう -

    ブートエントリを削除するのは難しいと思っていたけど、これで簡単にできそうです。ありがとう!

  19. 栗田 亮太 -

    この記事を見つけて助かりました!Grubの問題は本当に厄介でしたが、解決への道筋が見えました。

  20. 川口 結衣 -

    この方法がうまくいくことを期待してます!それでも心配であれば、バックアップを取りながらやるのが良いと思います

  21. 清水 明美 -

    このトピックについてもっと知りたいです。Grubのトラブルシューティングに関する他のリソースがあれば教えてください

  22. 田中 一郎 -

    質問ですが、他にGrubの設定を修正する方法ってありますか?これ以上の情報があれば教えてほしいです

コメントを残す

LinuxデスクトップでQRコードをスキャンする方法

LinuxデスクトップでQRコードをスキャンする方法

CoBangを使えば、Webカメラまたは画像ファイルでLinux上でQRコードをスキャンできます。インストールオプション、セットアップ手順、Flatpakカメラへのアクセスに関する修正方法については、こちらをご覧ください。

Cameractrlsを使ってLinuxでウェブカメラの設定を変更する方法

Cameractrlsを使ってLinuxでウェブカメラの設定を変更する方法

Cameractrlsを使用してLinux上でウェブカメラの設定を変更しましょう。露出、色、フリッカー低減などのサポートされているコントロールを調整し、互換性のあるビデオモードを確認できます。

LinuxにPhpStormをインストールする方法:ツールボックス、Tar.gz、Snap、およびAUR

LinuxにPhpStormをインストールする方法:ツールボックス、Tar.gz、Snap、およびAUR

LinuxにPhpStormをインストールするには、JetBrains Toolboxを使用するか、スタンドアロンのtar.gzアーカイブを使用するか、SnapおよびArch AURオプションを選択してください。Javaは既にバンドルされています。

LinuxにCisco Packet Tracerをインストールする方法

LinuxにCisco Packet Tracerをインストールする方法

Cisco Packet Tracer 9.0.1 を Ubuntu 64 ビット版にダウンロードし、APT を使用して DEB パッケージをインストールし、ターミナルでライセンスに同意してサインインすると、ラボを開始できます。

LinuxでCD-ROMをISOイメージとしてバックアップする方法

LinuxでCD-ROMをISOイメージとしてバックアップする方法

Linux上でGNOME Disksまたはddコマンドを使用してCD-ROM ISOイメージを作成します。光学ドライブを識別し、コピーを監視し、イメージを検証し、破損したディスクやオーディオディスクに別のツールが必要な場合を把握できます。

XFCE 4でデュアルパネルを設定する方法

XFCE 4でデュアルパネルを設定する方法

各ディスプレイごとに個別のXFCE 4パネルを作成し、2番目のパネルを右側の出力に割り当て、位置とサイズを調整し、必要なランチャーとステータス項目を追加します。

LinuxでGIMPを使って画像を切り抜く方法

LinuxでGIMPを使って画像を切り抜く方法

LinuxでGIMPを使って写真の背景を削除する方法:被写体をトレースし、選択した背景を削除し、透明度を保持して、再利用可能なPNG形式でエクスポートします。

FlightGearを無料でダウンロード:公式インストールガイド

FlightGearを無料でダウンロード:公式インストールガイド

FlightGearは公式サイトから無料でダウンロードできます。Windows、macOS、Linuxの各パッケージを比較し、データファイルをインストールして、最初のフライトを開始しましょう。

OKSampler:キーボードビートのための無料かつシンプルな音楽サンプラー

OKSampler:キーボードビートのための無料かつシンプルな音楽サンプラー

OKSamplerはMP3クリップをキーボードのキーにマッピングし、音声をループ再生できます。この旧型フリーウェアの機能、旧機能が失われた箇所、ダウンロード前に確認すべき点について解説します。

Googleタスクのデスクトップアプリケーション:パソコンでの使い方

Googleタスクのデスクトップアプリケーション:パソコンでの使い方

Googleタスクをブラウザで開き、Chromeショートカットやアプリスタイルの起動機能を追加し、カレンダーとGmailを通じて期日が過ぎたタスクを管理できます。