Не секрет, что в CentOS 7 достаточно старое ядро (3.10) и нередко для работы на новом оборудовании возникает необходимость в новом ядре. Так же наличие нового ядра дает возможность использовать новые возможности и увеличить быстродействие не только самой ОС, но и прикладных программ (базы данных, сетевые сервисы и т.п.).
Ядро Oracle Unbreakable Enterprise Kernel (UEK) очень хорошо зарекомендовало себя в дистрибутиве Oracle Linux, его релиз R6 основан на ядре Linux v5.4 и предоставляет множество различных новшеств. Работа ядер Oracle UEK возможна не только с дистрибутивом Oracle Linux, но также и с RedHat и CentOS.
Ниже читайте обо всех нюансах установки ядра Oracle UEK R6 на CentOS 7.
Исходные данные: CentOS Linux 7
Задача: Установить ядро Oracle UEK R6
1. Проверка версии ядра на CentOS Linux 7
# uname -a Linux srv-01 3.10.0-1160.6.1.el7.x86_64 #1 SMP Tue Nov 17 13:59:11 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
2. Установка GPG ключа OSS:
wget http://oss.oracle.com/ol6/RPM-GPG-KEY-oracle rpm --import RPM-GPG-KEY-oracle mv RPM-GPG-KEY-oracle /etc/pki/rpm-gpg
3. Установка репозитария Oracle UEK R6:
(cat <<-EOF [ol7_UEKR6] name=Latest Unbreakable Enterprise Kernel Release 6 for Oracle Linux \$releasever (\$basearch) baseurl=https://yum.oracle.com/repo/OracleLinux/OL7/UEKR6/\$basearch/ gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle gpgcheck=1 enabled=1 EOF ) > /etc/yum.repos.d/oracle-uek.repo
Проверим список репозитариев:
# yum repolist Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: centos-mirror.rbc.ru * extras: centos-mirror.rbc.ru * updates: mirror.awanti.com repo id repo name status base/7/x86_64 CentOS-7 - Base 10,072 extras/7/x86_64 CentOS-7 - Extras 448 ol7_UEKR6/x86_64 Latest Unbreakable Enterprise Kernel Release 6 for Oracle Linux 7 (x86_64) 197 updates/7/x86_64 CentOS-7 - Updates 778 repolist: 11,495
4. Установим, что ядро UEK будет ядром по умолчанию:
sed -i 's/DEFAULTKERNEL=kernel/DEFAULTKERNEL=kernel-uek/' /etc/sysconfig/kernel
5. Установка нового пакета linux-firmware
Для установки kernel-uek нужен новый пакет linux-firmware из репа OracleLinux. Подключать само репо нет смысла, т.к. из него начнут обновляться пакеты в CentOS, поэтому мы скачаем только один нужны RPM пакет и обновим его на CentOS 7:
wget https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/linux-firmware-20200902-999.5.gitd5f9eea5.el7.noarch.rpm rpm -Uvh linux-firmware-20200902-999.5.gitd5f9eea5.el7.noarch.rpm rm -f linux-firmware-20200902-999.5.gitd5f9eea5.el7.noarch.rpm
6. Установка ядра UEK R6:
yum -y install kernel-uek kernel-uek-devel
7. Проверим список меню из загрузчика:
awk -F\' /^menuentry/{print\$2} /etc/grub2.cfg
Результат:
CentOS Linux (5.4.17-2036.100.6.1.el7uek.x86_64) 7 (Core) CentOS Linux (3.10.0-1160.6.1.el7.x86_64) 7 (Core) CentOS Linux (3.10.0-1160.el7.x86_64) 7 (Core) CentOS Linux (0-rescue-4172723801d441cf8c3ebb4f90f8aad3) 7 (Core)
Мы видим, что первым в списке идет новое ядро. Это нам и нужно. Теперь можно перезагрузить сервер.
8. Перезагрузка
reboot
9. Проверка версии нового ядра
# uname -a Linux srv-01 5.4.17-2036.100.6.1.el7uek.x86_64 #2 SMP Thu Oct 29 17:04:48 PDT 2020 x86_64 x86_64 x86_64 GNU/Linux
Отлично, у нас новое ядро Linux — Oracle UEK R6 — 5.4.17-2036
На этом все, до скорых встреч.
Если у Вас возникли вопросы или Вы хотите, чтобы я помог Вам, то Вы всегда можете связаться со мной разными доступными способами.
Профессионально занимаюсь системным администрированием Linux -серверов и баз данных (MySQL, POstgreSQL) на протяжении последних 24 лет.