Что означает ошибка GRUB
Ошибки GRUB возникают, когда загрузчик не может найти или загрузить ядро Linux. Типичные сообщения:
grub rescue>— загрузчик перешёл в аварийный режим из-за повреждённой конфигурации.error: unknown filesystem— GRUB не распознаёт файловую систему раздела с Linux.error: no such partition— указан неверный раздел или он отсутствует.error: file not found— не найден файл ядра (vmlinuz) или initrd.
Ошибка появляется сразу после BIOS/UEFI, до появления экрана входа в систему. Система не загружается дальше.
Причины возникновения
- Повреждение конфигурации GRUB — некорректное обновление, ручное редактирование
/boot/grub/grub.cfgили/etc/default/grub. - Изменение разделов диска — сжатие, удаление или создание разделов после установки Linux.
- Сбой обновления ядра — неполная установка нового ядра, удаление старых версий.
- Ошибки диска — bad-сектора на разделе
/bootили в MBR/ESP (для UEFI). - Конфликт с другим загрузчиком — например, после установки Windows перезаписан MBR.
- Неправильные настройки UEFI/BIOS — отключен Secure Boot, неверный порядок загрузки.
Способ 1: Восстановление через LiveCD
Этот способ подходит, если GRUB не загружается даже в rescue-режим.
- Загрузитесь с LiveCD любого дистрибутива Linux (Ubuntu, Fedora и т.д.).
- Определите раздел с Linux:
Найдите раздел, где находитсяsudo fdisk -l/boot(обычноext4илиbtrfs). Запомните устройство (например,/dev/sda2). - Смонтируйте корневой раздел:
Еслиsudo mount /dev/sda2 /mnt/bootотдельный, смонтируйте его:sudo mount /dev/sda1 /mnt/boot - Смонтируйте системные файловые системы (для chroot):
sudo mount --bind /dev /mnt/dev sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys - Перейдите в chroot:
sudo chroot /mnt - Переустановите GRUB:
- Для BIOS (MBR):
grub-install /dev/sda - Для UEFI:
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
- Для BIOS (MBR):
- Обновите конфигурацию:
update-grub - Выйдите из chroot и перезагрузитесь.
Способ 2: Исправление в режиме rescue
Если появляется приглашение grub rescue>, можно загрузиться вручную.
- Определите раздел с Linux:
В
grub rescue>выполните:
Вывод покажет устройства (например,ls(hd0),(hd0,msdos1)). Проверьте каждый:
Ищите каталогиls (hd0,msdos1)/bootилиlost+found. - Установите правильный раздел (предположим,
(hd0,msdos1)):set root=(hd0,msdos1) - Загрузите ядро и initrd (пути могут отличаться):
Узнайте точные имена файлов черезlinux /boot/vmlinuz-5.15.0-78-generic root=/dev/sda1 initrd /boot/initrd.img-5.15.0-78-genericls /boot. - Запустите систему:
После загрузки немедленно исправьте GRUB (см. Способ 1).boot
Способ 3: Переустановка GRUB с загрузочного USB
Если другие методы не сработали, выполните чистую переустановку.
- Создайте загрузочный USB с той же версией дистрибутива.
- Загрузитесь с USB в режиме "Try Ubuntu" (или аналогичном).
- Откройте терминал и установите
boot-repair(универсальный инструмент):sudo add-apt-repository ppa:yannubuntu/boot-repair sudo apt update sudo apt install boot-repair boot-repair - В интерфейсе Boot Repair нажмите "Recommended repair". Программа автоматически определит проблемы и переустановит GRUB.
- Перезагрузитесь, извлеките USB.
Профилактика
- Не изменяйте разделы диска без резервной копии. Перед операциями используйте
gpartedи создайте бэкапы. - Обновляйте систему аккуратно: после
apt upgradeубедитесь, что все ядра установлены корректно. - Регулярно делайте снапшоты (если используете Btrfs или ZFS) или полные резервные копии
/bootи MBR/ESP. - Проверяйте диск на ошибки:
sudo smartctl -a /dev/sda sudo fsck /dev/sda1 - Для UEFI: не удаляйте раздел ESP и не форматируйте его без необходимости.
- После установки Windows всегда переустанавливайте GRUB, так как Windows перезаписывает MBR.