Как установить/удалить/выбрать нужное ядро в Ubuntu

Проверка установленных ядер
Вы можете увидеть список всех установленных версий ядра с помощью команды:
dpkg --list | grep linux-image
Вывод будет выглядеть примерно так:
ii linux-image-5.15.0-122-generic 5.15.0-122.132 amd64 Signed kernel image generic
ii linux-image-5.15.0-124-generic 5.15.0-124.134 amd64 Signed kernel image generic
ii linux-image-5.15.0-125-generic 5.15.0-125.135 amd64 Signed kernel image generic
ii linux-image-5.15.0-126-generic 5.15.0-126.136 amd64 Signed kernel image generic
Я добавил в систему больше ядер для наглядности, но фактически у вас их будет меньше.
В выводе команды dpkg --list (dpkg -l) первые две буквы в столбце обозначают состояние пакета.
Расшифровка состояния ii:
- Первая буква (i) — Status (Статус пакета):
- i (installed) — Пакет установлен.
- Вторая буква (i) — Desired State (Желаемое состояние):
- i (install) — Пакет должен быть установлен.
ii означает, что пакет установлен и его текущее состояние соответствует ожидаемому (пакет установлен корректно).
Установка специфического ядра Linux
Когда требуется обновить ядро системы или установить конкретную версию для поддержки оборудования или новых возможностей, выполните следующие шаги. Укажите номер сборки (KERNEL_BUILD) и установите соответствующие пакеты ядра, модули и заголовки с помощью команды apt install.
Задайте переменную для номера сборки ядра:
KERNEL_BUILD=5.15.0-119
Установите ядро и связанные пакеты:
sudo apt install linux-headers-${KERNEL_BUILD} linux-headers-${KERNEL_BUILD}-generic linux-image-${KERNEL_BUILD}-generic linux-modules-${KERNEL_BUILD}-generic linux-modules-extra-${KERNEL_BUILD}-generic
Удаление ненужного ядра в Ubuntu
Для освобождения места и минимизации риска конфликтов рекомендуется удалять устаревшие или ненужные версии ядра. Укажите номер сборки (KERNEL_BUILD) и используйте команду apt remove с флагом --purge, чтобы полностью удалить пакеты ядра и их модули.
Задайте переменную для номера сборки ядра:
KERNEL_BUILD=5.15.0-122
Удалить ядро и связанные пакеты:
sudo apt remove linux-headers-${KERNEL_BUILD} linux-headers-${KERNEL_BUILD}-generic linux-image-${KERNEL_BUILD}-generic linux-modules-${KERNEL_BUILD}-generic linux-modules-extra-${KERNEL_BUILD}-generic --purge
Очистите кэш пакетов:
sudo apt autoremove --purge
sudo apt autoclean
Установка нужного ядра основным при загрузке
Иногда требуется загрузить систему с конкретным ядром. Это можно настроить через меню загрузчика GRUB. Для загрузки системы с определённой версией ядра настройте параметр GRUB_DEFAULT в загрузчике GRUB.
К сожалению при этом подходе при обновлении всё сломается
Выведите список доступных ядер в меню GRUB:
grep "menuentry 'Ubuntu," /boot/grub/grub.cfg | awk -F"'" '{printf "%d %s\n", NR-1, $2}'
Пример вывода:
0 Ubuntu, with Linux 5.15.0-126-generic
1 Ubuntu, with Linux 5.15.0-126-generic (recovery mode)
2 Ubuntu, with Linux 5.15.0-125-generic
3 Ubuntu, with Linux 5.15.0-125-generic (recovery mode)
4 Ubuntu, with Linux 5.15.0-124-generic
5 Ubuntu, with Linux 5.15.0-124-generic (recovery mode)
6 Ubuntu, with Linux 5.15.0-119-generic
7 Ubuntu, with Linux 5.15.0-119-generic (recovery mode)
Проверьте текущий параметр GRUB_DEFAULT:
cat /etc/default/grub | grep GRUB_DEFAULT
Обычно значение будет GRUB_DEFAULT=0.
Измените параметр GRUB_DEFAULT:
Откройте файл /etc/default/grub и задайте позицию ядра в формате X>Y, где X — позиция меню, а Y — подпозиция. Например:
GRUB_DEFAULT="1>6"
В данном случае система загрузится с ядром Linux 5.15.0-119-generic.
Обновите конфигурацию GRUB:
Примените изменения, обновив настройки загрузчика:
sudo update-grub
Перезагрузите систему, чтобы применить новое ядро:
sudo reboot -h now
Результат:
Система будет загружаться с указанной версии ядра по умолчанию.
No comments to display
No comments to display