کامپیوتر، شبکه

کپی برداری از مطالب  وبلاگ با ذکر منبع مجاز است.

Introduction to Grub Rescue

سه شنبه یازدهم آبان ۱۴۰۰ 15:47

 

NOTE
If you experience a no such partition error, we have a separate guide for how to fix grub error: no such partition grub rescue

In this tutorial you will learn:

  • What are the Grub files?
  • How to repair Grub
  • What to do if Grub is completely broken

Grub rescue on a Linux system

 

Grub rescue on a Linux system

 

Software Requirements and Linux Command Line Conventions

CategoryRequirements, Conventions or Software Version Used
SystemAny Linux distro using grub
SoftwareGRUB
OtherPrivileged access to your Linux system as root or via the sudo command.
Conventions# – requires given linux commands to be executed with root privileges either directly as a root user or by use of sudo command
$ – requires given linux commands to be executed as a regular non-privileged user

Grub Files

Let’s start with developing a basic understanding of grub. The grub files on your system can be found in /boot/grub. This directory contains the grub config file grub.cnf along with other files that are essential for grub to find and boot into your operating system(s).

Grub files on Linux

 

Grub files on Linux

If one of these files gets deleted or otherwise edited to prevent grub from doing its job, you’ll find yourself at the grub rescue menu the next time you restart your computer. Other times, fiddling with partitions in a dual boot environment can cause similar issues. Either way, you end up needing to repair grub, which is what we’ll cover next.



How to Repair Grub

When you get to a grub> prompt, you can use the following commands as an attempt to fix your boot loader and get booted back into your Linux distro.

  1. Start by doing a simple ls listing to see what partitions are available. Depending on your configuration, you may see multiple hard drives or partitions in this listing.
    grub> ls
    (hd0) (hd0,msdos1)
    
  2. You can see the files of any partition by using another ls command. This will help you indentify which partition you want to boot into.
    grub> ls (hd0,msdos1)/
    lost+found var/ dev/ run/ etc/ tmp/ sys/ proc/ usr/ bin boot/ home/ lib lib64 mnt/ opt/ root/ sbin srv/
    
  3. Once you have determined the correct partition, you can set it as root with the following commands. For our example, we’ll be using (hd0,msdos1) as our root partition, /boot/vmlinuz as our Linux kernel, /boot/initrd.img as our image file, and /dev/sda1 as our device name. Depending on your distribution and configuration, these values may be different for you. Use tab completion to help select the right Linux kernel and image file, and fdisk -l command to get the correct device name.
    grub> set root=(hd0,msdos1)
    grub> linux /boot/vmlinuz root=/dev/sda1
    grub> initrd /boot/initrd.img
    
  4. Once you have set the root partition, Linux kernel, and initrd image file, you should be able to successfully boot into your Linux distro.
    grub> boot
    
  5. Once loaded into your system, finish repairing Grub by remaking the config file and reinstalling Grub.
    # grub-mkconfig -o /boot/grub/grub.cfg
    # grub-install /dev/sda
    # reboot
    

What If Grub Is Completely Broken?

If you are brought to the grub rescue> prompt when booting your computer, you’ll need to use live media to help repair your system. Once you are booted into the live environment, open up a terminal and type the following commands.



This should get your Linux install back up and running, even if grub had been completely broken or deleted from your system.

Conclusion

If grub doesn’t work properly, your computer doesn’t know how to load Linux. It can be really intimidating when the grub prompt loads up and none of the normal Linux commands seem to work. However, rescuing grub is pretty simple once you understand how it functions and what commands to use. The steps above should help you repair grub, whether it has just been misconfigured or requires a complete reinstallation.

  1. First, mount your partition. Use fdisk -l if you’re not sure of the correct name.
    # mount /dev/sda1 /mnt
    
  2. Chroot into the installed system in order to reconfigure grub.
    # chroot /mnt
    
  3. Generate a new grub config file (on Debian based systems, an alternative to the below command is update-grub).
    # grub-mkconfig -o /boot/grub/grub.cfg
    
    1. Lastly, install grub onto the device, exit chroot, and reboot your system as normal.
      # grub-install /dev/sda
      # exit
      # reboot
      

Source

مهندس چراغی
بیوگرافی
رفع ایراد سیستم و شبکه های کامپیوتری  ، برقراری امنیت  و نیز فروش تمامی تجهیزات مربوط به آنها
کدهای وبلاگ