Rocky Linux Rocky Linux

Rocky Linux: после обновления ядра загружается старое ядро

  • Обновлено
  • Чтение ≈ 3 минуты
  • Нужны права администратора

Краткий ответ

Загрузка идёт с сохранённой записи GRUB. Ниже — причины и порядок действий от простого к сложному.

В этой статье
  1. Что означает ошибка
  2. Причины и решения
  3. Пошаговое решение
  4. Диагностика
  5. Выбор нового ядра
  6. Пересборка конфигурации

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

Сообщение
Загружается не последнее ядро после dnf update

После dnf update система загружает старое ядро, а новое появилось в списке GRUB, но не выбрано по умолчанию. В Rocky Linux (как и в RHEL) загрузчик использует BLS-записи в /boot/loader/entries/ и сохранённый выбор (saved_entry), а не обязательно самое новое ядро.

Это нормальное поведение при ручной фиксации выбора.

Установить по умолчанию новое ядро можно командой grubby.

Загрузка идёт с сохранённой записи GRUB. Установите по умолчанию новое ядро командой grubby или пересоберите конфигурацию.

#Причины и решения

Возможная причинаКак узнатьЧто делать
Старое ядро по умолчаниюСохранено.grubby --set-default.
Не обновлён GRUBКонфиг.grub2-mkconfig.
UEFIПуть.Проверьте.
Мало места /bootОшибка.Удалите старые.

#Пошаговое решение

  1. Проверьте текущее и установленные ядраВ Rocky Linux откройте терминал и выполните uname -r — это версия запущенного ядра; затем rpm -q kernel-core — список установленных версий. Команда sudo grubby --default-kernel показывает выбранное по умолчанию ядро, если grubby установлен. Сравните эти результаты с файлами в /boot и свободным местом (df -h /boot); не запускайте grub2-install или перезапись EFI, пока не доказано, что проблема именно в загрузчике.
  2. Посмотрите default-kernelНа Rocky Linux в терминале выполните sudo grubby --default-kernel и sudo grubby --info=ALL, затем uname -r. Сравните путь к ядру по умолчанию с реально загруженным и найдите нужную версию среди установленных пакетов rpm -q kernel-core. Если файл ядра отсутствует, сначала восстановите пакет и проверьте свободное место в /boot; не меняйте grub.cfg вручную без необходимости.
  3. Установите нужное ядро по умолчаниюВ Rocky Linux выполните rpm -q kernel и sudo grubby --info=ALL; сверьте существующие пути kernel=/boot/vmlinuz-.... Сохраните текущий default из grubby --default-kernel. Только если новое ядро действительно установлено и файл существует, выполните sudo grubby --set-default /boot/vmlinuz-РЕАЛЬНАЯ_ВЕРСИЯ, подставив путь из вывода. Не вводите слово РЕАЛЬНАЯ_ВЕРСИЯ буквально.
  4. Проверьте место в /bootВ терминале выполните df -h и посмотрите столбцы «Использовано» и «Доступно» на разделе с программой или данными. Не удаляйте неизвестные системные каталоги; сначала выясните, какие файлы занимают место.
  5. Пересоберите GRUB при необходимостиНа Rocky Linux с BLS (обычно версия 8/9) выбор ядра удобнее проверять через grubby, а не пересобирать GRUB после каждого обновления. Пересоздание grub.cfg требуется только при подтверждённом повреждении конфигурации и зависит от UEFI/BIOS и версии ОС. Перед вмешательством сохраните текущий файл, выполните lsblk -f и уточните путь загрузчика на конкретном компьютере. Не используйте наугад пути старых CentOS или команду grub2-install по примерному диску.
  6. Убедитесь, что новая запись действительно загрузиласьПосле изменения default через grubby перезагрузите компьютер в доступное окно обслуживания и выполните uname -r и grubby --default-kernel. Если загрузилось прежнее ядро, не удаляйте его: сохраните grubby --info=ALL, журнал загрузки и проверьте, не заблокирован ли новый модуль драйвером или Secure Boot.
  7. Не устанавливать ядро с подставным путём: предварительно проверить реальные файлы ядер
    Linux · Терминал (Bash)КомандаНужен sudo
    Не устанавливать ядро с подставным путём: предварительно проверить реальные файлы ядер. Запуск: терминал Linux с правами, указанными в команде. Сначала проверьте имя устройства и целевой путь.
    sudo grubby --info=ALL

#Диагностика

Проверьте текущее и установленные ядра: uname -r, rpm -q kernel, sudo grubby --default-kernel, sudo grubby --info=ALL | grep -E "^(index|kernel|title)". Если default-kernel указывает на старое, а новое есть в списке — достаточно сменить умолчание. Проверьте, что /boot не заполнен: df -h /boot (нехватка места приводит к неполной установке ядра).

#Выбор нового ядра

Установите по умолчанию последнее: sudo grubby --set-default /boot/vmlinuz-5.14.0-xxx.el9_x.x86_64 (укажите точное имя из ls /boot/vmlinuz-*). Или по индексу: sudo grubby --set-default-index=0. Для интерактивной проверки при перезагрузке выберите запись в меню GRUB. Параметр GRUB_DEFAULT=saved в /etc/default/grub оставляет прежний выбор; для «всегда самое новое» подойдёт GRUB_DEFAULT=0.

#Пересборка конфигурации

Если записей нет или меню пустое, пересоберите: BIOS — sudo grub2-mkconfig -o /boot/grub2/grub.cfg; UEFI — sudo grub2-mkconfig -o /boot/grub2/grub.cfg (в современных EL9 используется общий путь /boot/grub2/grub.cfg). Проверьте dnf install kernel-core и целостность initramfs: sudo dracut -f /boot/initramfs-$(uname -r).img $(uname -r) для нужной версии. Удалите лишние ядра: sudo dnf remove --oldinstallonly --setopt installonly_limit=2 kernel.

Так эту ошибку тоже называют

Источники и обновления

Последнее обновление статьи: 2 ноября 2026. Версии программ и интерфейсы меняются — если шаги не совпадают с вашей версией, сверяйтесь с документацией производителя.