GNU/Linux >> Belajar Linux >  >> Cent OS

Bagaimana memulihkan GRUB (Partisi boot yang rusak) di CentOS/RHEL 5,6

Masalahnya

Sistem macet di grub> prompt seperti yang ditunjukkan di bawah ini.

Bagaimana pulih dari situasi seperti itu.

Solusinya

Ketika Anda mendapatkan kesalahan di atas, dalam sebagian besar kasus Anda memiliki partisi boot yang rusak.

1. Untuk memperbaiki masalah, jalankan dari baris perintah grub:

grub> find /grub/stage1
find /grub/stage1
(hd0,0)

Perintah di atas akan mencari stage1 (stage1 ditempatkan di MBR dan kemudian dibaca oleh BIOS) ini akan mencantumkan di mana tepatnya residen partisi boot, dalam hal ini hd0,0.

2. Kembalikan partisi boot pada hd0,0 (partisi pertama pada disk pertama) seperti pada contoh di atas dari perintah find.

grub> root (hd0,0)
Filesystem type is ext4fs, partition type 0x83

3. Kemudian setup grub pada disk pertama (hd0) – seperti contoh diatas boot stage1 terletak di hd0.

grub>setup (hd0)

Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/e2fs_stage1_5" exists... yes
Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 15 sectors are embedded.
succeeded
Running "install /boot/grub/stage1 d (hd0) (hd0)1+15 p (hd0,1)/boot/grub/stage
2 /boot/grub/menu.lst"... succeeded
Done.

4. Setelah perintah akan berhasil reboot server.

grub> reboot

Verifikasi apakah sistem boot sekarang tanpa masalah.

Pemecahan masalah lebih lanjut

Jika masalah masih berlanjut dan sistem berhenti lagi pada baris perintah grub, verifikasi apakah grub.conf ada dan memiliki nilai yang tepat:

grub> find (hd0,0)/grub/grub.conf
find (hd0,0)/grub/grub.conf
(hd0,0)
grub> cat (hd0,0)/grub/grub.conf

cat (hd0,0)/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/mapper/vg_lnxovmsan2076-lv_root
# initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Oracle Linux Server Unbreakable Enterprise Kernel (3.8.13-16.2.1.el6uek.x86_64)
root (hd0,0)
kernel /vmlinuz-3.8.13-16.2.1.el6uek.x86_64 ro root=/dev/mapper/vg_root-lv_root rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=uk LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 rd_LVM_LV=vg_root/lv_root rd_LVM_LV=vg_root/lv_swap rd_NO_DM rhgb quiet crashkernel=256M@64M
initrd /initramfs-3.8.13-16.2.1.el6uek.x86_64.img

[Hit return to continue]

Jika masalah ditemukan dengan params boot kernel, Anda dapat secara manual memberikan string boot kernel:

grub> linux /boot/vmlinuz-3.8.13-16.2.1.el6uek.x86_64 ro root=/dev/mapper/vg_root-lv_root rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=uk

grub> boot

Jika itu tidak membantu atau misalnya file grub.conf hilang atau saat menjalankan cat di grub.conf mendapatkan contoh di bawah ini output:

grub> cat (hd0,0)/grub/grub.conf

cat (hd0,0)/grub/grub.conf
????????????????????????????????????????????????????????????????
????????????????????????????????????????????????????????????????
????????????????????????????????????????????????????????????????

Ini akan diperlukan untuk mem-boot sistem ke Mode Penyelamatan dan memverifikasi apa yang terjadi – output di atas dengan '???' menunjukkan korupsi root-fs. Jika grub masih tidak berfungsi bahkan setelah memulihkan file grub.conf dan masih mendapatkan kesalahan grub di sekitar gambar boot, Anda perlu menginstal ulang sistem.

Hanya untuk boot UEFI

Untuk memulihkan Grub di boot UEFI, jalankan perintah di bawah ini:

# efibootmgr -v

Setelah itu jalankan:grub-install

# grub-install /dev/sda


Cent OS
  1. CentOS / RHEL 5,6 :Cara menginstal ulang GRUB loader dari mode penyelamatan

  2. Cara Membuat Partisi /boot Baru di CentOS / RHEL

  3. Cara Memulihkan Partisi Root yang Rusak dari Mode Penyelamatan di CentOS/RHEL 5,6

  1. Cara Mempartisi Perangkat Pseudo DM-Multipath di CentOS/RHEL

  2. Cara Rebuild GRUB pada Jenis Partisi MSDOS di CentOS/RHEL/OEL 7

  3. Cara Memulihkan dari file /etc/mtab yang Rusak atau kosong di CentOS/RHEL 7

  1. Bagaimana memulai layanan saat boot dengan RHEL 8 / CentOS 8 Linux

  2. Cara membuat dan mengaktifkan Partisi Swap di Centos / RHEL 8

  3. Cara Debug proses boot systemd di CentOS/RHEL 7 dan 8