Ubuntu 内核升级

Linux 内核大概几天就会有一个小版本更新,几个月就会有一次主要版本的更新,例如:

  • 2018-10-22 v4.19
  • 2018-12-24 v4.20
  • 2019-03-04 v5.0
  • 2019-03-10 v5.0.1
  • 2019-03-14 v5.0.2
  • 2019-03-19 v5.0.3

为了使用一些新的特性,或者为了提升性能和安全性,或者只是为了修复某些问题,需要对内核进行单独升级。

The Linux Kernel Archives
Ubuntu Kernel Mainline

升级内核正常情况下不会出现问题,但不排除可能会出现问题,请合理评估风险

查看当前内核版本

可以通过 uname 查看当前内核版本,

1
2
$ uname -sr
Linux 4.4.0-92-generic

或者输入 uname -a 查看完整信息。

Ubuntu 内核升级

最好是升级到长期支持版(longterm)本或者稳定版(stable),可以在 The Linux Kernel Archives查看当前的版本,这里以 longterm: 4.19.36 为例。

之后在 Ubuntu Kernel Mainline 找到对应的版本号,https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.19.36/

在对应的架构Build for xxx succeeded,下载不包含 lowlatency 的所有deb文件。例如在 x86_64 下,总共需要下载4个文件。

1
2
3
4
linux-headers-4.19.36-041936_4.19.36-041936.201904200430_all.deb
linux-headers-4.19.36-041936-generic_4.19.36-041936.201904200430_amd64.deb
linux-image-unsigned-4.19.36-041936-generic_4.19.36-041936.201904200430_amd64.deb
linux-modules-4.19.36-041936-generic_4.19.36-041936.201904200430_amd64.deb

安装

1
sudo dpkg -i linux-*.deb

重启

1
sudo reboot

确认升级成功

1
2
$ uname -sr
Linux 4.19.36-041936-generic

这里看到内核版本已经升级成功了,其他版本或者架构操作也类似。

删除旧的内核版本

如果确实要移除旧的内核版本,可以通过该命令查看已经安装的内核版本,

1
dpkg --get-selections | grep linux

然后直接使用 apt-get purge 删除旧版本的包(有明确的版本号)。

总结

还有一些其他方法,例如直接用 apt-get 升级,还有一些工具,具体可以参考 How to update kernel to the latest mainline version without any Distro-upgrade?

Author

Xinyu Liu

Posted on

2019-04-21

Updated on

2019-04-21


Comments