CentOS 7で破損したGrubブートローダを回復または救済する方法


このチュートリアルでは、壊れたブートローダを CentOS 7 または Red Hat Enterprise Linux 7 で修復するプロセスについて説明し、忘れたrootパスワードを回復します。

GRUB ブートローダは、ハードウェアまたはソフトウェア関連の障害などのさまざまな問題により、CentOSで破損、危険にさらされたり削除されたり、デュアルブートの場合は他のオペレーティングシステムに置き換えられることがあります。 Grubのブートローダーが壊れていると、 CentOS/RHEL システムは起動できなくなり、コントロールをLinuxカーネルに転送できなくなります。

Grubブートローダーステージ1は、通常マスターブートレコード MBR)と呼ばれる領域の各ハードディスクの最初の 448 バイトにインストールされます。 )。

MBR の最大サイズは、 512 バイトです。何らかの理由で最初の 448 バイトが上書きされた場合は、<で起動しない限り CentOS または Red Hat Enterprise Linux をロードできません。レスキューモードで、または他のブートロード方法を使用して MBR GRUB ブートローダを再インストールすると、強力な> CentOS ISO イメージが表示されます。

  1. Download CentOS 7 DVD ISO Image

CentOS 7でGRUBブートローダを回復

1. 最初のステップで、最新バージョンの CentOS 7 ISO イメージをダウンロードしてDVDに書き込むか、起動可能なUSBメモリを作成します。起動可能イメージをマシンの適切なドライブに入れて、マシンを再起動します。

BIOS がPOSTテストを実行している間に、BIOS設定を入力して変更するために特別なキー( Esc、F2、F11、F12、Del を押します)。次の図に示すように、起動シーケンスは起動可能なDVD/USBイメージがマシンの起動時に最初に起動されるようにします。

2. CentOS 7 ブータブルメディアが検出されると、最初の画面がマシンモニターの出力に表示されます。最初のメニューから[トラブルシューティング]オプションを選択し、 [enter] キーを押して続行します。

3. 次の画面で[ CentOSシステムの救済]オプションを選択し、 [enter] キーを押して先に進みます。新しい画面が表示され、「 Enterキーを押してインストールプロセスを開始します」というメッセージが表示されます。ここで、もう一度 [enter] キーを押すだけで、CentOSシステムをメモリにロードできます。

4. インストーラソフトウェアがコンピュータのRAMに読み込まれると、レスキュー環境のプロンプトが画面に表示されます。下の画像に示すように、このプロンプトで続行してシステムの復旧プロセスを行うために 1 を入力します。

5. 次のプロンプトで、システムが/mnt/sysimage ディレクトリの下にマウントされたことをレスキュープログラムが通知します。ここでは、レスキュープログラムが示唆するように、Linuxツリーの階層をISOイメージからディスクのマウントされたルートパーティションに変更するために chroot/mnt/sysimage を入力します。

6. 次に、レスキュープロンプトで下記のコマンドを発行して、コンピューターのハードドライブを特定します。

# ls /dev/sd*

あなたのマシンが基礎となる古い物理RAIDコントローラを使っている場合、ディスクは/dev/cciss のような他の名前を持ちます。また、CentOSシステムが仮想マシンの下にインストールされている場合、ハードディスクの名前は/dev/vda または/dev/xvda になります。

しかし、あなたがあなたのマシンのハードディスクを識別した後、あなたは以下のコマンドを発行することによってGRUBブートローダのインストールを始めることができます。

# ls /sbin | grep grub2  # Identify GRUB installation command
# /sbin/grub2-install /dev/sda  # Install the boot loader in the boot partition of the first hard disk

7. GRUB 2 ブートローダがハードディスクのMBR領域に正常にインストールされたら、 exit と入力してCentOSのブートISOイメージツリーに戻ります。下のスクリーンショットに示すように、コンソールに init 6 と入力して再起動します。

8. コンピュータを再起動したら、まず BIOS 設定を入力して起動順序メニューを変更します(インストールされているMBRブートローダーのあるハードディスクをブートメニューの順序)

BIOS設定を保存し、もう一度再起動して新しい起動順序を適用します。再起動後、マシンは次の図に示すように直接GRUBメニューを起動します。

おめでとうございます。 CentOS 7システムの損傷したGRUBブートローダーを正常に修復しました。 GRUBブートローダーを復元した後、新しいgrub設定を適用するためにマシンが1回か2回再起動することが時々あることに注意してください。

CentOS 7でルートパスワードを回復する

9. rootのパスワードを忘れてCentOS 7システムにログインできない場合は、基本的にリカバリモードでCentOS 7 ISO DVDイメージを起動してパスワードをリセット(空白)して、 手順6 に達するまで、上記と同じ手順を実行します。あなたがあなたのCentOSインストールファイルシステムにログインしている間に、Linuxアカウントのパスワードファイルを編集するために次のコマンドを発行してください。

# vi /etc/shadow

シャドウファイルで、ルートパスワード行(通常は最初の行)を指定し、 i キーを押して vi編集モードに移動し、最初のコロンの間にある文字列全体を削除します。下のスクリーンショットに示すように、“:” と2番目のコロン“:”

終了したら、次のキーをこの順序で押してファイルを保存します。 : - &gt; wq!

10. 最後に、chrootされたコンソールを終了し、 init 6 と入力してマシンを再起動します。再起動後、現在パスワードが設定されていないrootアカウントでCentOSシステムにログインし、下のスクリーンショットに示すように passwdコマンドを実行してrootユーザーの新しいパスワードを設定します。

それで全部です!リカバリモードでCentOS 7 DVD ISOイメージを使用して物理マシンまたはVMを起動すると、システム管理者はデータのリカバリやチュートリアルで説明されているものなど、壊れたシステムに対してさまざまなトラブルシューティングタスクを実行できます。