想起来有台上古服务器至今还运行着 Debian 9 & 4.9 内核,记录下今天升级的过程
所使用的命令大量参考了:
https://blog.cyru1s.com/posts/update-linux-kernel-5-on-debian-9-stretch.html
- 检查冲突
sudo apt-mark showhold
// 如果存在冲突则
sudo apt-mark unhold package_name
- 更新源
sudo apt update
sudo apt upgrade
sudo apt full-upgrade
sudo apt autoremove
- 升级到 Debian 10 Buster
sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
sudo nano /etc/apt/sources.list
替换为以下内容
deb http://deb.debian.org/debian buster main
deb http://deb.debian.org/debian buster-updates main
deb http://security.debian.org/debian-security buster/updates main
开始更新
sudo apt update
sudo apt upgrade
sudo apt full-upgrade
sudo apt autoremove
随后重启并通过 lsb_release -a 确认更新成功
- 加入 Backports
sudo nano /etc/apt/sources.list.d/backports.list
替换为以下内容
deb http://http.debian.net/debian buster-backports main
deb-src http://http.debian.net/debian buster-backports main
进行更新
sudo apt update
sudo apt upgrade
- 安装新内核
这里使用 Cloud 内核以减少空间占用
Cloud 内核剔除了云服务器不需要的驱动和组件,体积更小
sudo apt install -t buster-backports linux-image-cloud-amd64 linux-headers-cloud-amd64
sudo update-grub
- 重启验证并删除旧内核
uname -r
// 应该显示 5.x-cloud 字样
搜索所有内核
sudo apt list|grep installed|grep -v automatic|grep linux-image-
sudo apt list|grep installed|grep -v automatic|grep linux-headers-
删除与 lsb_release -a 和 uname -r 返回结果无关的 image 和 headers
sudo apt purge linux-
sudo apt clean
sudo apt autoremove
至此,完成!