Linux システムで grub.cfg ファイルの破損を修復する手順

Linux システムで grub.cfg ファイルの破損を修復する手順

1. grub.cfg ファイルの紹介

1. grub.cfg ファイルの場所

ブートファイル

[ルート@ノード1 grub2]# ls
device.map フォント grub.cfg grubenv i386-pc
[root@node1 grub2]# pwd
/boot/grub2
[ルート@ノード1 grub2]# 

2. grub.cfg ファイルの機能

grubはオペレーティングシステムを起動するプログラムです。独自の設定ファイルに従ってカーネルを起動します。カーネルがメモリにロードされた後、
カーネルは、grub 構成ファイル内の構成に従って、ルート パーティションで使用されるファイル システムに対応するドライバーを見つけ、ルート パーティション ファイル システムに対応するドライバーを介してルート パーティションをマウントし、それによってオペレーティング システムを起動するという目的を達成します。

3. システム起動プロセスの概要

1. MBR をメモリにロードします。MBR = 512 バイト = ブート プログラム (446 バイト) + 64 バイト (パーティション テーブル) + 2 バイト 2. BIOS は GRUB ブート プログラムをロードし、システム制御がブート プログラムに引き渡されます。
3. ブート プログラムは、設定ファイル /boot/grub2/grub.cfg をロードし、/boot ディレクトリとカーネル ファイルがあるパーティションを指示し、カーネルと initramfs をロードしてメモリに配置します。
initramfs には、ハードウェアの起動に必要なカーネル モジュールと初期化スクリプトが含まれています。
4. カーネルは自身を初期化し、initramfs 内のすべてのハードウェアのドライバーを見つけてハードウェアを初期化します。
5. initramfs 内の /sbin/init が pid 1 のプロセスとして起動され、systemd にリンクされます。
6. カーネルはルートを initramfs から実際のルートに切り替えます。
7. 最初のプログラムsystemdを起動する

2. grub.cfgファイルが破損しており、システムが起動してインターフェースを起動する

ここに画像の説明を挿入

3. 修復手順

1. /bootディレクトリがあるパーティションを指定します

ここに画像の説明を挿入

2. カーネルファイルをロードし、ルートパーティションを読み取り専用モードでマウントします。

ここに画像の説明を挿入

3. initramfsファイルを指定する

ここに画像の説明を挿入

4. 開始

ここに画像の説明を挿入

5. システムに入り、grub.cfgファイルを再生成します。

ここに画像の説明を挿入

注意: ルート パーティションをマウントするときは、実際の状況に応じて情報を入力してください。通常、システムがデフォルトでインストールされ、システム ディスクが nvme 形式の場合、ルート パーティションは /dev/nvme0n1p3 です。

システム ディスクは SATA ハード ディスクであり、ルート パーティションは通常 /dev/mapper/rhel-root ですが、システムを自分でインストールした場合はカスタマイズされたシステム パーティションになります。

これで、Linux で破損した grub.cfg ファイルを修復する方法に関する記事は終了です。Linux で破損した grub.cfg ファイルを修復する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • 「fsck」を使用して Linux のファイルシステムエラーを修正する方法
  • 歴史的な Linux 画像処理および修復ソリューション
  • Linux ディスク修復 e2fsck コマンドについての簡単な説明

<<:  CSS を使用してデータ ホットスポット効果を実現する方法

>>:  優れたユーザー インターフェース デザインのための 37 のヒント (画像付き)

推薦する

vue3 を使用してカウント関数コンポーネントのカプセル化例を実装する

目次序文1. カプセル化の重要性2. どのようにカプセル化しますか? 1. アイデア2. 準備2. ...

MySQL の効率的なクエリの左結合とグループ化 (プラス インデックス)

mysql 効率的なクエリMySQL は、左結合の速度を上げるために group by を犠牲にし...

JavaScriptは、ユーザーがチェックボックスをオンにする必要があるプロトコルの例を実装します。

js では、ログインまたは登録を確認する前に、ユーザーが特定の契約書を読むように設定します (使用...

Nginx での SSL 証明書のインストールと展開手順の概要

目次問題の説明:インストール手順1. 準備2. サーバーにリモート接続する3. 証明書と秘密鍵ファイ...

10 HTML テーブル関連タグ

実際、多くの人が「テーブルは絶対に使用すべきではないと聞いたことがある」と言いますが、これは絶対に間...

Vue カプセル化 TabBar コンポーネントの完全なステップ記録

目次実装のアイデア:ステップ 1: TabBar と TabBarItem のコンポーネント カプセ...

マークアップ言語 - タイトル

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

MYSQLについては、データ型と操作テーブルを知る必要があります

データ型と操作データテーブル1.1 MySQL 型: 整数 1.2 MySQL データ型: 浮動小数...

JavaScript Domはカルーセルの原理と例を実装します

カルーセルを作りたい場合、まずその原理を理解する必要があります。画像を右から左にスライドさせるにはど...

MYSQLでリモートアクセス権限を有効にする方法

1. MySQLデータベースにログインするmysql -u ルート -pユーザーテーブルを表示する ...

実用的なクイックスタートReactルーティング開発

インストールインストールするには、次のコマンドを入力します。 // ネプ npm で react-r...

CentOS7.4 に MySQL 5.7.26 をインストールするための詳細なチュートリアル

CentOS にはデフォルトで MariaDB がインストールされていますが、これは MySQL の...

Ubuntuがネットワークに接続できない場合の解決策

仮想マシン内の Ubuntu がネットワークに接続できない場合の効果的な解決策: 1. Ubuntu...

Linux ホスト名設定の詳細な紹介

目次1. Linuxホスト名を設定するクライアントホストを構成するサーバーホストを構成する2. ホス...

Ubuntu 18.04 に Anaconda3 をインストールするための詳細なチュートリアル

Anaconda は、conda、Python、およびそれらの依存関係など、180 を超える科学パッ...