在 CentOS 系统中,升级内核版本可以通过以下两种主要方法实现:
下载内核源码并解压:
从 CentOS 官方网站或内核源码仓库下载所需版本的内核源码并解压。例如,下载内核 5.11 的源码并解压:
wget https://dl.lamp.sh/kernel/el7/kernel-ml-6.9.10-1.el7.x86_64.rpm
wget https://dl.lamp.sh/kernel/el7/kernel-ml-devel-6.9.10-1.el7.x86_64.rpm
wget https://dl.lamp.sh/kernel/el7/kernel-ml-headers-6.9.10-1.el7.x86_64.rpm
tar -zxvf linux-6.9.10-1.el7.x86_64.tar.gz
注意:确保有足够的磁盘空间(至少 10GB 以上)。
复制并配置内核:
复制红帽官方的 kernel 编译配置文件并更改名字:
cp /boot/config-$(uname -r) .config
安装必要的开发工具和依赖项:
yum install openssl openssl-devel
配置内核选项:
make menuconfig
根据需要启用或禁用内核模块。
编译并安装内核:
编译内核:
make -j4
安装模块:
make modules_install
安装内核:
make install
更新 GRUB 配置并重启系统:
更新 GRUB 配置文件:
grub2-mkconfig -o /boot/grub2/grub.cfg
设置默认启动内核:
grub2-set-default 0
重启系统以使用新内核:
reboot
验证内核版本:
系统重启后,使用以下命令验证内核版本:
uname -r
安装 ELRepo 存储库:
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
安装最新的内核:
使用以下命令安装最新的 CentOS 内核(例如,Mainline 内核):
yum --enablerepo=elrepo-kernel install kernel-ml
更新 GRUB 配置并重启系统:
更新 GRUB 配置文件:
grub2-mkconfig -o /boot/grub2/grub.cfg
设置默认启动内核:
grub2-set-default 0
重启系统:
reboot
验证内核版本:
使用以下命令验证内核版本:
uname -r