GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS / RHEL 5,6 :レスキュー モードから GRUB ローダーを再インストールする方法

まれに、GRUB ローダーが破損する場合があります。この投稿では、CentOS/RHEL 5 または 6 に GRUB ローダーを再インストールする方法を説明しています。

GRUB が破損したことをどうやって知るのですか

以下は、GRUB ローダーが破損した場合に見られる症状の一部です。
1.サーバーの起動時に GRUB メニューが表示されない
2.インストール DVD を使用してサーバーをレスキュー モードで起動し、起動ディスクのヘッダーを確認します。GRUB ローダーが破損している場合:

# file -s /dev/sda
/dev/sda: x86 boot sector; partition 1: ID=0x83, active, starthead 1, startsector 63, 64998927 sectors; partition 2: ID=0x82, starthead 254, startsector 64998990, 2104515 sectors

良いものは次のように見えますが:

# file -s /dev/sda
/dev/sda: x86 boot sector; partition 1: ID=0x83, active, starthead 1, startsector 63, 64998927 sectors; partition 2: ID=0x82, starthead 254, startsector 64998990, 2104515 sectors, code offset 0x48

出力はリリースごとに異なる場合がありますが、重要な点は、最初の出力に「コード オフセット 0x48」がないことです。 これは、GRUB ステージ 1 コードの指標です。

GRUB ローダーの再インストール

起動ディスクが sda であると仮定しましょう 、/ パーティションは sda2 です 、および /boot パーティションは sda1 です .

1. サーバーをレスキュー モードで起動し、ファイル システムを自動的にマウントします。サーバーをレスキューモードで起動する方法については、以下の投稿を参照してください。

CentOS / RHEL 6 :レスキュー モードで起動する方法

2. / パーティションは /mnt/sysimage の下にマウントされます 自動的。そうでない場合は、手動でマウントしてください:

# mount /dev/sda2 /mnt/sysimage

3. /boot パーティションと /dev を手動でマウントして、chroot 環境を準備します。

# mount /dev/sda1 /mnt/sysimage/boot
# mount -o bind /dev /mnt/sysimage/dev
# chroot /mnt/sysimage

4. GRUB ローダーを再インストールします

# grub-install /dev/sda

サーバーを再起動すると、GRUB メニューが表示されるはずです。

# reboot
CentOS / RHEL 7 :レスキュー モードから GRUB2 を再インストールする方法

マルチパス デバイスに grub を再インストールする

マルチパス デバイスを使用してストレージ エリア ネットワーク (SAN) から起動するように構成されたサーバーで grub の再インストールが必要な場合は、次の手順に従います。ブート デバイスのマスター ブート レコード (MBR) が破損したり、他のブート ローダーによって上書きされたりすると、Grub を再インストールする必要があります。また、サーバーのインストール後に SAN 構成からのブートが有効になった場合や、シングルパスの SAN ブート デバイスがマルチパスになるように再構成された場合など、インストール後にブート デバイスが変更される場合にも必要です。

1. 「linux レスキュー mpath」を使用して、マルチパスを有効にしてサーバーをレスキュー モードで起動します。 」 起動オプション。現在のマルチパス構成を表示するには、レスキュー環境から次のコマンドを実行できます:

# multipath -ll

2. /etc/fstab を編集して、プレーン名 (/dev/sdY) の代わりにマルチパス デバイス名 (/dev/mapper/mpathX) を使用して /boot をマウントします。デバイス識別の信頼性を高めるために、/boot の UUID を使用することをお勧めします。

3. /boot を含むマルチパス デバイスを grub に追加し、以下を使用してブート ローダーをインストールします。

# grub
grub> device (hd0) /dev/mapper/mpatha
grub> root (hd0,0)
grub> setup (hd0)
grub> quit

注意 :grub-install コマンドは、マルチパス デバイスでは機能しません。

4. 以下の投稿を参照して初期 RAM ディスクを再生成します。

CentOS / RHEL 6 :初期 RAM ディスク イメージの再構築方法
CentOS / RHEL 5 :初期 RAM ディスク イメージの再構築方法


Cent OS
  1. CentOS / RHEL 7 :firewalld から iptables に切り替える方法

  2. CentOS/RHEL で「無差別モード」でインターフェイスを構成する方法

  3. CentOS/RHEL 7 で FIPS モードを無効にする方法

  1. CentOS /RHEL7でSELinuxを有効にする方法

  2. CentOS/RHEL 5,6 で破損したルート パーティションをレスキュー モードから回復する方法

  3. GRUBレスキューからWindowsを起動

  1. CentOS /RHEL7でシングルユーザーモードで起動する方法

  2. シングルユーザーモードでRHEL7/CentOS7サーバーを起動する方法

  3. CentOS 8 /RHEL8サーバーをシングルユーザーモードで起動する方法