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 のヒント (画像付き)

推薦する

MySQL 変数の原理と応用例

MySQL ドキュメントでは、MySQL 変数はシステム変数とユーザー変数の 2 つのカテゴリに分類...

基本的な HTML ディレクトリの問題 (相対パスと絶対パスの違い)

相対パス - ファイルを参照する Web ページの場所に基づいて確立されたディレクトリ パス。そのた...

MySQL解凍版のインストール手順の詳しい説明

1. 公式サイトにアクセスします: D:\mysql-5.7.21-winx64\bin をダウンロ...

MySQLがサブクエリと結合の使用を推奨しない理由

ページ分割されたクエリを実行するには: 1. MySQL の場合、サブクエリと結合の使用は推奨されま...

HTML2 キャンバス SVG が認識されない場合の解決策

ウェブページを画像としてキャプチャする新機能があったので、人気のhtml2canvasを使ってみまし...

Nginx で https をアップグレードする方法

購入証明書Alibaba CloudのCloud Shield証明書サービスから購入できます。証明書...

Linuxで新しいユーザーを作成し、指定されたディレクトリへの権限を付与する

1 ユーザーを作成し、ユーザーのルートパスとパスワードを指定します useradd -d /home...

Vue+js 矢印をクリックして画像を切り替える

この記事の例では、矢印をクリックして画像を切り替えるVue + jsの具体的なコードを共有しています...

SQLインジェクションの詳しい解説 - セキュリティ編(第2部)

この記事に誤りがあったり、ご提案がありましたら、お気軽にご連絡ください。よろしくお願いいたします。は...

ページングクリックコントロールを実装するネイティブJS

これは、ネイティブJSを使用してページングクリックコントロールを実装する必要がある面接の質問です。参...

CentOS7 での MySQL 8.0.16 のインストールと設定のチュートリアル

MySQLの古いバージョンをアンインストールします(古いバージョンがない場合は、この手順をスキップし...

Tomcat が応答データグラムを書き戻すタイミングの詳細な分析

疑問が生じるこの質問は、ファイルのダウンロードを記述しているときに発生しました。HttpServle...

弾力性のあるナビゲーション効果を実現するJavaScript

この記事では、弾性ナビゲーション効果を実現するためのJavaScriptの具体的なコードを参考までに...

Linux での Firewalld の高度な設定の使用に関する詳細な説明

IPマスカレードとポート転送Firewalldは2種類のネットワークアドレス変換をサポートしています...

DockerにTomcatコンテナを追加したときにホームページにアクセスできない問題の解決方法

質問docker run コマンドを使用して、tomcat コンテナが正常に追加されました。ポートも...