Linux grubHigh

GRUB Errors in Ubuntu: Causes and Bootloader Fix Methods

The article thoroughly examines typical GRUB bootloader errors in Ubuntu, their causes, and provides several working recovery methods, from simple graphical tools to manual commands.

Updated at February 17, 2026
15-30 min
Medium
FixPedia Team
Применимо к:Ubuntu 18.04Ubuntu 20.04Ubuntu 22.04Ubuntu 24.04

What a GRUB Error Means

GRUB errors in Ubuntu manifest in several forms:

  • grub> screen — a minimal GRUB command-line interface that appears when it cannot find the grub.cfg configuration file.
  • grub rescue> screen — an even more limited mode, activated when the core bootloader or partition is damaged.
  • error: no such partition message — GRUB cannot find the partition with the installed system.
  • Ubuntu missing from the menu — the system does not appear in the boot list, even though it is installed.
  • Hanging on a black screen after selecting an item — likely a corrupted configuration or kernel.

These symptoms mean the bootloader cannot properly read the configuration or hand over control to the Linux kernel. Most often, the problem occurs after:

  • Interrupting a system or kernel update.
  • Manually changed GRUB settings (e.g., in /etc/default/grub).
  • Partition damage (disk failure, incorrect partition table modification).
  • Reinstalling Windows, which overwrote the MBR/ESP.
  • Errors during disk cloning or moving the system to a different drive.

Common Causes

  1. Corrupted grub.cfg file — the configuration file may be deleted, damaged, or not updated after a new kernel installation.
  2. Incorrect settings in /etc/default/grub — errors in parameters (e.g., GRUB_CMDLINE_LINUX or GRUB_TIMEOUT) can make GRUB non-functional.
  3. Windows bootloader overwrite — during Windows installation or recovery, its bootloader overwrites the MBR (in BIOS) or the EFI partition entry (in UEFI), removing GRUB.
  4. Partition table changes — moving, deleting, or changing the types of partitions where GRUB resides (especially /boot or the EFI system partition).
  5. Insufficient space in /boot — when the /boot partition fills up, kernel updates may not install completely, breaking the boot process.
  6. GRUB module errors — damage to files in /boot/grub (e.g., core.img) due to disk failure or interrupted writes.
  7. Boot mode mismatch (BIOS/UEFI) — if Ubuntu was installed in UEFI mode but the BIOS is set to Legacy, or vice versa, GRUB will not be found.

Solutions

Method 1: Restore GRUB with Boot-Repair (Graphical Method)

Boot-Repair is a utility that automatically diagnoses and fixes most GRUB problems. Suitable for beginners and quick resolution.

  1. Boot from an Ubuntu Live USB/DVD (as described in the howToSteps above).
  2. Connect to the internet (via Wi-Fi or wired).
  3. Open a terminal and run:
    sudo add-apt-repository ppa:yannubuntu/boot-repair
    sudo apt update
    sudo apt install boot-repair
    boot-repair
    
  4. In the window that opens, click "Recommended repair".
  5. Wait for completion (may take 5-10 minutes). The utility will automatically reinstall GRUB, update the configuration, and fix common errors.
  6. After completion, close the window, reboot, and remove the Live USB/DVD.

⚠️ Important: If Boot-Repair offers to create a report (paste URL), save it — it will help with further diagnostics if the problem persists.

Method 2: Manual GRUB Restoration via chroot (Command Line)

This method gives full control and works when Boot-Repair fails or precise configuration is needed.

  1. Boot from an Ubuntu Live USB/DVD and open a terminal.
  2. Identify the Ubuntu partition (see howToSteps, step 2). Assume it is /dev/sda3.
  3. Mount the root partition:
    sudo mount /dev/sda3 /mnt
    
    If you have a separate /boot partition, mount it:
    sudo mount /dev/sdaX /mnt/boot  # replace X with your /boot partition number
    
    If using UEFI, mount the EFI system partition (usually FAT32, 100-500 MB):
    sudo mount /dev/sdaY /mnt/boot/efi  # replace Y with your EFI partition number
    
  4. Mount virtual filesystems:
    sudo mount --bind /dev /mnt/dev
    sudo mount --bind /proc /mnt/proc
    sudo mount --bind /sys /mnt/sys
    
  5. If using chroot with IPv6 addressing, you may also mount /run:
    sudo mount --bind /run /mnt/run
    
  6. Perform chroot:
    sudo chroot /mnt
    
    You are now in your installed Ubuntu.
  7. For BIOS (Legacy) systems:
    grub-install /dev/sda
    update-grub
    
    For UEFI systems:
    grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ubuntu --recheck
    update-grub
    
    If the grub-install command fails, check if the EFI partition is mounted and contains the EFI/ubuntu folder.
  8. Exit chroot: exit.
  9. Unmount all partitions:
    sudo umount -R /mnt
    
  10. Reboot.

Method 3: Reinstall GRUB (If Previous Methods Fail)

Sometimes a complete GRUB reinstall with cleanup of old data helps.

  1. Complete steps 1-6 from Method 2 (chroot).
  2. Remove old GRUB files:
    rm -rf /boot/grub
    rm -rf /boot/efi/EFI/ubuntu  # UEFI only
    
  3. Reinstall GRUB as in step 7 of Method 2.
  4. Update the configuration:
    update-grub
    
  5. Exit, unmount, and reboot.

Method 4: Fix GRUB Configuration (If the Error is in the Config)

If GRUB loads but cannot find the kernel or shows errors like error: file '/boot/vmlinuz-...' not found, the issue may be in the configuration file.

  1. Boot into Ubuntu (via Rescue mode or if booting partially works).
  2. Open the /etc/default/grub file:
    sudo nano /etc/default/grub
    
    Check parameters:
    • GRUB_CMDLINE_LINUX — should not contain invalid options.
    • GRUB_TIMEOUT — a reasonable value (e.g., 5-10 seconds).
    • GRUB_DISTRIBUTOR and GRUB_OS_PROBER — usually left at defaults.
  3. If you recently edited this file, try temporarily commenting out changes (add # at the start of the line).
  4. Update the configuration:
    sudo update-grub
    
  5. Reboot.

If the system still does not boot, the kernel files may be the issue. Check for files in /boot:

ls -la /boot

Ensure files like vmlinuz-<kernel-version> and initrd.img-<kernel-version> exist. If not, reinstall the kernel:

sudo apt install --reinstall linux-image-generic
sudo update-grub

Prevention

To avoid recurring GRUB errors:

  1. Do not interrupt system updates — especially processes involving the kernel (linux-image-*) or GRUB (grub-pc, grub-efi). Use sudo apt update && sudo apt upgrade in a stable state.
  2. Back up critical partitions (e.g., /boot and the EFI partition) before major changes. A simple way:
    sudo cp -a /boot /boot-backup
    sudo cp -a /boot/efi /boot-efi-backup  # for UEFI
    
  3. Avoid manually editing files in /boot/grub — changes should be made via /etc/default/grub and update-grub.
  4. Maintain consistent boot mode — do not switch between BIOS and UEFI without reinstalling the system. Check the current mode:
    [ -d /sys/firmware/efi ] && echo UEFI || echo BIOS
    
  5. Monitor free space on /boot — when it fills up (over 90%), remove old kernels:
    sudo apt autoremove --purge
    
    Or manually:
    dpkg -l 'linux-image*' | grep '^ii'  # list installed
    sudo apt remove linux-image-<old-version>
    
  6. When installing Windows alongside Ubuntu — always boot from a Live USB and restore GRUB after completing the Windows installation.

Following these recommendations significantly reduces the risk of bootloader errors. If a problem occurs, start with Boot-Repair — it solves up to 80% of cases. In complex situations, use manual recovery via chroot.

F.A.Q.

What is GRUB and why do its errors prevent Ubuntu from booting?
Can GRUB be fixed without a USB drive or Ubuntu disk?
How to prevent GRUB errors from recurring after fixing?
What's the difference between manual chroot recovery and Boot-Repair?

Hints

Boot from an Ubuntu Live USB/DVD
Identify the partition with installed Ubuntu
Mount the root partition and necessary systems
Perform chroot into the system
Reinstall GRUB
Exit and reboot

Did this article help you solve the problem?

FixPedia

Free encyclopedia for fixing errors. Step-by-step guides for Windows, Linux, macOS and more.

© 2026 FixPedia. All materials are available for free.

Made with for the community