Что означает ошибка Error 15
Сообщение GRUB Error 15 расшифровывается как File not found. На этапе инициализации загрузчик успешно считал свой первичный код, но не смог найти указанное в конфигурации ядро Linux (vmlinuz) или образ начальной загрузки (initrd.img). В результате система останавливается на чёрном экране с белым текстом и не передаёт управление операционной системе. Симптом появляется сразу после нажатия пункта меню в GRUB или автоматически при старте, если конфигурация повреждена.
Причины возникновения
- Изменение структуры диска: удаление, форматирование или слияние разделов сдвигает номера устройств и меняет UUID, которые записаны в
grub.cfg. - Очистка каталога
/boot: ручное удаление старых ядер или сбой пакетного менеджера (apt,dnf,pacman) стирает актуальные файлы ядра. - Сбой обновления загрузчика: установка пакетов, изменение размера разделов или отключение диска не были синхронизированы через
update-grub. - Конфликт с Windows: установка или крупное обновление Windows часто перезаписывает MBR/EFI, нарушая ссылки на конфигурацию GRUB.
Способы решения
Способ 1: Автоматическая утилита Boot-Repair
Самый безопасный метод для пользователей, предпочитающих графический интерфейс. Загрузитесь с Live-USB вашего дистрибутива, подключите интернет. Откройте терминал и выполните:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt update
sudo apt install boot-repair
Запустите утилиту из меню приложений, выберите Recommended repair. Программа автоматически просканирует диски, восстановит конфигурацию и пропишет загрузчик в нужный раздел. После завершения перезагрузите компьютер.
Способ 2: Ручная переустановка через chroot
Даёт полный контроль над процессом. Загрузитесь с Live-USB. Определите корневой раздел: lsblk -f. Примонтируйте систему и привяжите виртуальные файловые системы:
sudo mount /dev/sdX2 /mnt
# Если /boot вынесен отдельно:
sudo mount /dev/sdX1 /mnt/boot
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
Перейдите в окружение восстановленной ОС: sudo chroot /mnt. Переустановите загрузчик на физический диск (указывайте /dev/sda, а не /dev/sda1!):
# Для BIOS/MBR систем:
grub-install /dev/sda
# Для UEFI систем (замените путь к EFI разделу, если он отличается):
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ubuntu
Обновите конфигурацию: update-grub (для Arch/Fedora используйте grub-mkconfig -o /boot/grub/grub.cfg). Выйдите командой exit, отмонтируйте разделы и перезагрузитесь.
Способ 3: Временный запуск через консоль GRUB
Если Live-USB под рукой нет, а система нужна срочно, можно загрузить ядро вручную. На экране с ошибкой нажмите c. Найдите нужный раздел командой ls (hd0,gpt2)/ (подбирайте цифру, пока не увидите vmlinuz и initrd). Укажите параметры загрузки:
linux (hd0,gpt2)/boot/vmlinuz-версия root=/dev/sda2 ro quiet
initrd (hd0,gpt2)/boot/initrd.img-версия
boot
💡 Совет: этот метод лишь временно запустит систему. Сразу после входа в Linux выполните
sudo update-grub, чтобы исправить конфигурацию навсегда и избавиться от необходимости прописывать пути вручную при каждом старте.
Профилактика
Чтобы ошибка не вернулась, всегда запускайте sudo update-grub после изменения таблицы разделов, установки новых ядер или клонирования дисков. При использовании двойной загрузки устанавливайте Windows первой, а Linux — второй, либо размещайте их на физических накопителях отдельно. Регулярно делайте резервную копию /etc/default/grub и /boot/grub/grub.cfg. Если вы экспериментируете с конфигурацией, используйте grub-customizer или редактируйте файлы в /etc/grub.d/, а не меняйте grub.cfg напрямую.