如何升级linux内核

Linux内核可通过包管理器(如apt、yum)更新,或手动编译安装,需备份数据,检查依赖,配置引导加载器,重启后验证

Linux系统中,内核是操作系统的核心组件,负责管理硬件资源、系统进程以及与外部设备的交互,随着技术的不断发展,新的内核版本不断推出,带来了性能提升、安全补丁和新功能,定期升级内核对于保持系统的安全性和高效性至关重要,以下是几种常见的升级Linux内核的方法:

如何升级linux内核

通过包管理器升级

更新软件源

确保系统的软件源是最新的,对于基于Debian的系统(如Ubuntu),可以使用以下命令:

sudo apt update

对于基于Red Hat的系统(如CentOS),则使用:

sudo yum update

查找可用内核版本

在Debian/Ubuntu系统中,可以通过以下命令查看可用的内核版本:

apt list | grep linux-image

在CentOS中,如果启用了ELRepo仓库,可以列出可用的内核版本:

sudo yum --disablerepo="" --enablerepo="elrepo-kernel" list available

安装新内核

选择适合的内核版本进行安装,在Debian/Ubuntu系统中安装特定版本的内核:

sudo apt install linux-image-6.1.0-31-rt-amd64

在CentOS中,使用ELRepo仓库安装新内核:

sudo rpm -ivh https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-5.4.278-1.el7.elrepo.x86_64.rpm

更新GRUB配置

安装新内核后,需要更新GRUB配置文件以确保新内核出现在启动菜单中,在Debian/Ubuntu系统中:

sudo update-grub

在CentOS中:

sudo grub2-mkconfig -o /boot/grub2/grub.cfg

重启系统并验证

重启系统后,在GRUB菜单中选择新安装的内核版本启动,启动后,使用以下命令验证内核版本:

uname -r

通过源码编译升级

下载内核源码

Linux内核官方网站下载所需版本的内核源码,下载6.7.1版本:

wget https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.7.1.tar.xz

将源码解压到指定目录:

如何升级linux内核

sudo tar -xvf linux-6.7.1.tar.xz -C /usr/src/

安装依赖包

编译内核需要一些必要的工具和库,在Debian/Ubuntu系统中:

sudo apt install flex bison bc build-essential libssl-dev libelf-dev libncurses-dev

在CentOS中:

sudo yum groupinstall "Development Tools"
sudo yum install ncurses-devel openssl-devel elfutils-libelf-devel

配置内核选项

进入内核源码目录并复制现有内核的配置文件:

cd /usr/src/linux-6.7.1/
sudo cp /boot/config-$(uname -r) ./.config

然后运行配置命令:

make menuconfig

根据需要调整内核选项,保存并退出。

编译并安装内核

编译内核是一个耗时的过程,可以使用多线程加速:

sudo make -j$(nproc)
sudo make modules_install
sudo make install

更新GRUB配置并重启

与包管理器升级相同,更新GRUB配置:

sudo update-grub   # Debian/Ubuntu
sudo grub2-mkconfig -o /boot/grub2/grub.cfg   # CentOS

重启系统并选择新内核启动。

使用第三方工具升级

Mainline(适用于Ubuntu)

Mainline是一个图形化工具,简化了内核升级过程,首先添加PPA源:

sudo add-apt-repository ppa:cappelikan/ppa
sudo apt update

安装并启动Mainline:

sudo apt install mainline
sudo mainline

在Mainline界面中选择所需的内核版本进行安装。

如何升级linux内核

ELRepo(适用于CentOS)

ELRepo提供了许多新版本的内核供CentOS使用,首先导入GPG密钥并安装ELRepo仓库:

sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-6.el7.elrepo.noarch.rpm

然后启用ELRepo仓库并安装新内核:

sudo yum --disablerepo="" --enablerepo="elrepo-kernel" list available
sudo yum --enablerepo="elrepo-kernel" install kernel-ml-devel

双内核共存与回退方案

为了确保系统的稳定性,建议在升级内核时保留旧内核,以便在出现问题时能够回退,以下是实现双内核共存的步骤:

备份当前内核配置

在进行任何操作之前,备份当前的内核配置文件:

cp /boot/config-$(uname -r) /boot/config-$(uname -r)-backup

安装新内核但保留旧内核

按照上述方法安装新内核,不要卸载或删除旧内核,这样在GRUB启动菜单中会同时出现新旧内核选项。

设置默认启动项(可选)

如果希望默认启动新内核,可以修改GRUB配置:

sudo nano /etc/default/grub

GRUB_DEFAULT设置为新内核的条目,

GRUB_DEFAULT=0   # 0表示第一个条目,通常是新内核

然后更新GRUB配置:

sudo update-grub   # Debian/Ubuntu
sudo grub2-mkconfig -o /boot/grub2/grub.cfg   # CentOS

回退到旧内核的方法

如果新内核出现问题,可以在启动时选择旧内核,具体操作如下:

  • 重启系统并在启动画面按下Shift键(某些系统可能需要按Esc键)。
  • 在GRUB菜单中选择旧内核版本启动

原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/59077.html

(0)
酷盾叔的头像酷盾叔
上一篇 2025年7月13日 17:04
下一篇 2025年7月13日 17:08

相关推荐

  • 如何在Linux系统上安装Zabbix?

    在Linux中安装Zabbix需先添加官方仓库,通过包管理工具安装Zabbix服务器、前端及Agent,配置MySQL/MariaDB数据库,修改Zabbix及PHP配置文件,启动相关服务后,通过网页访问IP/zabbix按向导完成初始化设置即可。

    2025年5月28日
    400
  • Linux怎么查你的本地IP地址?

    在Linux中使用ip addr命令查看本地IP,也可用ifconfig(需先安装net-tools),或hostname -I快速查看主要IP地址。

    2025年6月8日
    200
  • linux如何限制ip登陆

    Linux中,可通过编辑sshd_config文件,使用AllowUsers等指令指定允许登录的IP;或利用防火墙设置规则,如firewall-cmd添加白名单或黑名单限制IP登录

    2025年7月11日
    100
  • Linux系统类型如何查看?

    使用 uname -a 或 uname -m 命令查看内核版本和系统架构,查看 /etc/os-release 文件获取发行版名称和版本信息,arch 命令也可快速显示系统架构类型。

    2025年6月11日
    100
  • Linux如何重启gvim?

    在Linux中重启gVim,可通过终端执行命令:先结束现有gvim进程再重新启动,使用killall gvim && gvim或pkill gvim && gvim即可完成快速重启。

    2025年7月4日
    000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN