Рассмотрим, как обновить ядро Linux до последней версии на примере CentOS.
Проверьте, какая версия Linux у вас установлен:
$ cat /etc/redhat-release
CentOS Linux release 8.2.2004 (Core)
Проверьте версию ядра:
$ uname -r
4.18.0-193.6.3.el8_2.x86_64
Версия ядра 4.18 довольно старая и мы обновим ее до 5.x.
Начнем с подключения репозитория ElRepo. Это репозиторий сообщества для Enterprise Linux, который обеспечивает поддержку RHEL, CentOS, Scientific, Fedora. Импортируйте ключ репозитория:
$ rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
И установите ElRepo:
$ dnf install -y https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
Выведите список доступных ядер:
$ dnf --disablerepo="*" --enablerepo="elrepo-kernel" list available| grep kernel-ml
Для установки последнего доступного ядра, выполните команду:
$ dnf --enablerepo=elrepo-kernel install kernel-ml
Теперь нужно настроить загрузку Linux с новым ядром:
$ grub2-set-default 0
Обновите конфигурацию grub:
$ grub2-mkconfig -o /boot/grub2/grub.cfg
Перезагрузите хост:
$ reboot
Проверьте версию ядра, и убедитесь, что она изменилась на 5.17:
$ uname -r
5.17.1-1.el8.elrepo.x86_64
Сейчас в системе доступны две версии ядра:
$ rpm -qa | grep kernel
kernel-core-4.18.0-240.10.1.el8_3.x86_64 kernel-ml-core-5.17.1-1.el8.elrepo.x86_64
Вы можете удалить старое ядро (опционально):
$ dnf remove kernel-core-4.18.0 kernel-devel-4.18.0 kernel-tools-libs-4.18.0 kernel-headers-4.18.0
Проверьте, что старая версия ядра удалена:
$ rpm -qa | grep kernel
kernel-ml-core-5.17.1-1.el8.elrepo.x86_64 kernel-ml-5.17.6-1.el8.elrepo.x86_64 kernel-ml-modules-5.17.1-1.el8.elrepo.x86_64