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