Вопрос или проблема
Почему-то GRUB не обновляет список доступных ядра после планового обновления
Чтение файла `/etc/default/grub'
Генерация конфигурационного файла grub ...
grub-probe: ошибка: неопознанная файловая система.
Найдено изображение Linux: vmlinuz-6.8.0-44-generic в rpool/ROOT/ubuntu_9jipvg
Найдено изображение initrd: initrd.img-6.8.0-44-generic в rpool/ROOT/ubuntu_9jipvg
Найдено изображение Linux: vmlinuz-6.8.0-41-generic в rpool/ROOT/ubuntu_9jipvg
Найдено изображение initrd: initrd.img-6.8.0-41-generic в rpool/ROOT/ubuntu_9jipvg
/usr/sbin/grub-probe: ошибка: неопознанная файловая система.
Предостережение: os-prober будет выполнен для обнаружения других загрузочных разделов.
Его вывод будет использован для обнаружения запускаемых бинарных файлов в них и создания новых загрузочных записей.
Добавление пункта меню загрузки для UEFI Настройки прошивки ...
готово
Вот содержимое в папке загрузки:
$> ls -lah /boot
всего 185M
drwxr-xr-x 4 root root 15 Oct 2 14:56 .
drwxr-xr-x 22 root root 26 Apr 27 20:04 ..
-rw-r--r-- 1 root root 281K Oct 2 13:23 config-6.8.0-44-generic
-rw-r--r-- 1 root root 281K Aug 30 10:32 config-6.8.0-45-generic
drwxr-xr-x 2 root root 2 Sep 11 02:18 efi
drwxr-xr-x 2 root root 4 Oct 2 14:57 grub
lrwxrwxrwx 1 root root 27 Oct 2 14:50 initrd.img -> initrd.img-6.8.0-45-generic
-rw-r--r-- 1 root root 77M Oct 2 13:48 initrd.img-6.8.0-44-generic
-rw-r--r-- 1 root root 77M Oct 2 14:50 initrd.img-6.8.0-45-generic
lrwxrwxrwx 1 root root 27 Oct 2 14:56 initrd.img.old -> initrd.img-6.8.0-44-generic
-rw------- 1 root root 8,7M Aug 30 10:32 System.map-6.8.0-45-generic
lrwxrwxrwx 1 root root 24 Oct 2 14:50 vmlinuz -> vmlinuz-6.8.0-45-generic
-rw------- 1 root root 15M Aug 13 12:22 vmlinuz-6.8.0-44-generic
-rw------- 1 root root 15M Aug 30 11:02 vmlinuz-6.8.0-45-generic
lrwxrwxrwx 1 root root 24 Oct 2 14:56 vmlinuz.old -> vmlinuz-6.8.0-44-generic
Я полностью удалил версию 45 и переустановил ее. Я не вижу никаких ошибок, и apt тоже не видит.
Когда я перезагружаю, я попадаю в экстренный режим и мне приходится вручную возвращаться к 44 версии ядра через
update-initramfs -u -k 6.8.0-44-generic
Тогда система загружается как ожидается – но на старом ядре.
Что происходит с grub?
Ответ или решение
Для решения проблемы с отсутствием обновления списка загрузки ядра GRUB, которая у вас возникла, можно воспользоваться несколькими шагами. Давайте разберемся, что может быть не так и как это исправить.
-
Проверка файловой системы: Ошибка
grub-probe: error: unknown filesystem.
обычно указывает на проблемы с определением файловой системы. Убедитесь, что все необходимые файловые системы подключены и доступны. Вы можете использовать командуlsblk
илиblkid
, чтобы проверить, видит ли система разделы, на которых находятся ваши ядра. -
Проверка конфигурации GRUB:
- Откройте файл
/etc/default/grub
и проверьте, нет ли там ошибок конфигурации. Особое внимание обратите на строчкуGRUB_DEFAULT
, чтобы убедиться, что там не установлен неправильный индекс. - Запустите команду для обновления конфигурации GRUB:
sudo update-grub
- Убедитесь, что в выводе команды присутствуют все версии ядра.
- Откройте файл
-
Переустановка GRUB:
Если проблема сохраняется, попробуйте переустановить GRUB. Для этого выполните следующие команды:sudo grub-install /dev/sda # Замените /dev/sda на ваш диск с GRUB sudo update-grub
-
Кэширование образов: Иногда может помочь сброс кэша образов. Убедитесь, что в каталоге
/boot
присутствуют необходимые образы. Если каких-то версий не хватает, выполните:sudo update-initramfs -u
-
Работа с версиями ядра: Поскольку вы упомянули, что можете успешно загрузиться на старую версию ядра, значит, конфликты возникли из-за версии 45. Попробуйте удалить проблемную версию (если еще не сделали это) с помощью:
sudo apt purge linux-image-6.8.0-45-generic
После этого снова выполните команду:
sudo update-grub
-
Проверка зависимостей и обновлений: Убедитесь, что у вас установлены все необходимые пакеты для работы GRUB, а также проверьте наличие обновлений:
sudo apt update sudo apt upgrade
-
Просмотр логов: Если проблема не решается, стоит просмотреть логи для более детальной диагностики:
journalctl -b -1 # Логи предыдущей загрузки dmesg | less # Логи ядра
-
Если восстанавливаете через резервную копию: В случае полной неработоспособности системы и если у вас есть резервная копия, можете восстановить систему до ее прежнего состояния.
Следуя приведенным шагам, вы должны устранить проблему с обновлением списка загрузки ядер в GRUB. Если возникли дополнительные вопросы или трудности, не стесняйтесь задавать их.