Linux grub-rescueВысокая

Ошибка GRUB Rescue: причины и способы восстановления загрузчика

Статья объясняет, что такое режим GRUB Rescue, и предоставляет несколько проверенных способов восстановить загрузчик Linux, чтобы система снова загружалась.

Обновлено 17 февраля 2026 г.
10-15 мин
Средняя
FixPedia Team
Применимо к:Ubuntu 20.04+Fedora 35+Debian 11+Linux с GRUB 2

Что означает ошибка GRUB Rescue

Если при включении компьютера вместо привычного меню загрузки вы видите приглашение командной строки grub-rescue>, значит, загрузчик GRUB не может найти свои конфигурационные файлы или модули. Это не ошибка с кодом в традиционном понимании, а аварийный режим, который позволяет вручную указать пути и загрузить систему.

Типичный вывод:

grub-rescue> 

Система не загружается дальше, и вы оказываетесь в ограниченной среде с минимальным набором команд.

Причины возникновения

Ошибка GRUB Rescue возникает по следующим конкретным причинам:

  1. Повреждение MBR/GPT: Загрузочный сектор диска (MBR) или раздел загрузки (EFI System Partition) был перезаписан, например, после установки другой ОС или сбоя.
  2. Удаление или перемещение файлов GRUB: Файлы в директории /boot/grub (или /boot/efi/EFI/ubuntu для UEFI) были удалены, повреждены или перемещены на другой раздел.
  3. Некорректное изменение конфигурации: Ошибки в файле /etc/default/grub или скриптах в /etc/grub.d/ после ручного редактирования без последующего update-grub.
  4. Сбой диска: Появление bad-секторов на диске, где хранятся файлы GRUB, или полный отказ накопителя.
  5. Неверные настройки BIOS/UEFI: Изменение порядка загрузки, отключениеSecure Boot без соответствующей настройки GRUB.

Способ 1: Восстановление через rescue mode GRUB

Если вы находитесь в grub-rescue>, можно попробовать вручную загрузить систему, не используя LiveCD.

  1. Найдите раздел с файлами GRUB. Выполните:
    ls
    

    Вы увидите список дисков и разделов, например (hd0) (hd0,gpt1) (hd0,gpt2). Затем проверьте каждый:
    ls (hd0,gpt1)/
    

    Ищите директорию boot или файлы vmlinuz (ядро) и initrd. Как только нашли, запомните этот раздел (например, (hd0,gpt1)).
  2. Установите переменные root и prefix:
    set root=(hd0,gpt1)
    set prefix=(hd0,gpt1)/boot/grub
    

    Для UEFI-систем путь может быть (hd0,gpt1)/boot/efi/EFI/ubuntu.
  3. Загрузите нормальный модуль GRUB:
    insmod normal
    

    Если модуль не найден, возможно, путь в prefix указан неверно.
  4. Перейдите в нормальный режим GRUB:
    normal
    

    Если всё правильно, появится меню GRUB. Выберите ядро и загрузитесь.
  5. После успешной загрузки исправьте конфигурацию. В терминале ОС выполните:
    sudo update-grub
    

    Это пересоздаст конфигурацию и проверит наличие файлов.

⚠️ Важно: Этот способ даёт временную загрузку. Если проблема в повреждённых файлах, после перезагрузки ошибка может повториться. Обязательно выполните update-grub и, при необходимости, переустановите GRUB (см. Способ 3).

Способ 2: Использование загрузочного носителя (LiveCD/USB)

Если rescue mode не помогает или вы не можете найти нужные разделы, используйте загрузочный носитель с любой Linux-системой (Ubuntu, Fedora, Debian).

  1. Загрузитесь с Live-носителя. Выберите опцию "Try Ubuntu" или аналогичную, чтобы получить рабочий desktop.
  2. Определите разделы. Откройте терминал и выполните:
    sudo fdisk -l
    

    Найдите корневой раздел (например, /dev/sda2) и раздел /boot (если отдельный). Для UEFI также найдите ESP (FAT32, тип EFI System).
  3. Смонтируйте разделы. Для стандартной схемы:
    sudo mount /dev/sda2 /mnt
    sudo mount /dev/sda1 /mnt/boot   # если /boot отдельный
    

    Для UEFI:
    sudo mount /dev/sda1 /mnt/boot/efi
    

    Также смонтируйте системные виртуальные файловые системы:
    for i in /dev /dev/pts /proc /sys /run; do sudo mount --bind $i /mnt$i; done
    
  4. Перейдите в chroot-окружение:
    sudo chroot /mnt
    
  5. Переустановите GRUB:
    • Для BIOS/MBR:
      grub-install /dev/sda
      update-grub
      
    • Для UEFI:
      grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ubuntu
      update-grub
      
  6. Выйдите и перезагрузитесь:
    exit
    sudo reboot
    

    Уберите Live-носитель при перезагрузке.

Способ 3: Ручное восстановление файлов GRUB (если они повреждены)

Если файлы в /boot/grub отсутствуют или повреждены, их можно восстановить из пакета.

  1. В chroot-окружении (как в Способе 2) переустановите пакет GRUB:
    • Для Ubuntu/Debian:
      apt-get install --reinstall grub-pc grub-common
      
    • Для Fedora:
      dnf reinstall grub2-tools
      
  2. Обновите конфигурацию:
    update-grub   # Ubuntu/Debian
    grub2-mkconfig -o /boot/grub2/grub.cfg   # Fedora
    
  3. Проверьте целостность файлов:
    ls -la /boot/grub
    

    Должны быть файлы grub.cfg, i386-pc или x86_64-efi модули.

Способ 4: Использование утилиты Boot-Repair (для Ubuntu и производных)

Boot-Repair — это автоматический инструмент, который часто решает проблемы с GRUB.

  1. В Live-сессии Ubuntu добавьте репозиторий и установите:
    sudo add-apt-repository ppa:yannubuntu/boot-repair
    sudo apt update
    sudo apt install boot-repair
    
  2. Запустите:
    boot-repair
    
  3. Выберите "Recommended repair". Утилита автоматически определит проблему и исправит GRUB, MBR/ESP.
  4. Следуйте инструкциям на экране. В конце появится URL с логом — сохраните его на случай повторения проблемы.

Профилактика

Чтобы избежать повторного попадания в GRUB Rescue:

  1. Резервное копирование загрузчика:
    sudo dd if=/dev/sda of=~/mbr-backup.img bs=512 count=1   # для BIOS
    sudo cp -r /boot/grub ~/grub-backup/                     # файлы GRUB
    

    Для UEFI скопируйте директорию ESP:
    sudo cp -r /boot/efi/EFI ~/efi-backup/
    
  2. Аккуратное управление разделами: Не изменяйте порядок разделов и не удаляйте неизвестные разделы, особенно тип EFI System или с флагом boot.
  3. Регулярное обновление GRUB: После установки нового ядра или изменений в /etc/default/grub всегда выполняйте sudo update-grub.
  4. Мониторинг здоровья диска: Раз в месяц проверяйте S.M.A.R.T.-статус:
    sudo smartctl -a /dev/sda
    

    И файловые системы:
    sudo fsck -f /dev/sda2
    
  5. Избегайте установки Windows после Linux: Если нужно установить Windows, делайте это до Linux или будьте готовы восстановить GRUB вручную.
  6. Используйте LVM или RAID с осторожностью: Сложные схемы хранения увеличивают риск проблем с загрузкой. Убедитесь, что initramfs содержит необходимые модули.

Часто задаваемые вопросы

Что такое GRUB Rescue и почему он появляется?
Можно ли исправить GRUB Rescue без LiveCD?
Как предотвратить появление GRUB Rescue?
Что делать, если команды в rescue mode не работают?

Полезное

Определите разделы и файлы GRUB
Установите правильные переменные
Загрузите ядро вручную
Переустановите GRUB с LiveCD
Проверьте целостность диска

Эта статья помогла вам решить проблему?