升级内核

第一步也是最重要的一步,如果是vps的话直接创建快照即可

为什么升级?

这不是讲废话吗?种种因素也好,其实有些东西不需要升级也能用,可能一升级后再也开不开机了,也不排除这种情况

引言

  • 工作中有时会遇到系统版本过旧,无法满足安全扫描后的安全要求,系统漏洞数量多,处理难度较大,这时,我们就需要升级OS或Linux内核版本;

  • Linux 内核版本分为主线(mailine stable )、稳定和长期版本。所有内核版本都可以在内核开发官方网站上获取。

  • 主线版本(kernel-ml)代表整个 Linux 内核的一个树干,新的主线版本每 2-3 个月发布一次,所有的新功能及特性都将会包含主线版本中。

  • 稳定内核则是在主线版本中,被认为是稳定的那些。稳定内核的任何错误修复都将从主线树中继承,也就是主线内核出现的任何错误 (包括之前的任何旧版本内核的错误和 BUG) 在得到修复之后才会被指定为稳定内核,所以在通常情况下,稳定内核既有内核新功能,同时 BUG 也是最少的内核版本。稳定内核的更新发布依赖于主线内核 (直到下一个主线内核可用),稳定的内核更新是根据需要发布的,通常是每 3 个月。而对于长期文档内核版本,通常提供几个长期维护内核版本,用于较早的内核树错误修复后的更新。这些内核只应用重要的错误修复,通常不会有非常频繁的更新。

  • 主线、稳定和长期都是活动内核版本,由 Linus Torvalds 及 Linux 内核组织维护和发布。 而我们平时所使用的 Linux 发行版的内核都为分发(第三方)内核,许多 Linux 发行版都提供自己的长期维护(Lts)内核版本,这些内核可能是也可能不是基于内核开发人员维护的。因此分发版本的内核版本由发行版的厂商决定并有自己的维护周期,通常由分发版更新时一起发布。中的ml是就是最新的版本

原文链接:https://blog.csdn.net/ximenjianxue/article/details/120432863

升级操作

我们一般使用安装新内核来完成升级而非直接升级内核,安装新内核不会覆盖旧内核,而升级会导致新内核直接替换旧内核,可能会导致系统无法启动,安装也可以让我们在升级后有回滚的选择,确认正常后再删除老内核,。

升级前确认

内核版本:uname -r或-a

当然也可以 uname -rsm

Debian系列

注入内核源

直接vim到源文件里面更新就行了

vim /etc/apt/sources.list

添加这个内核源文件

deb http://mirrors.aliyun.com/debian buster-backports main

上面是Debian10的源
如果要更新Debian11的还要换成11的源

更新

下面命令一条一条执行

apt -t buster-backports install linux-image-amd64
apt -t buster-backports install linux-headers-amd64
apt update-grub

Debian11

apt -t bullseye-backports install linux-image-amd64
apt -t bullseye-backports install linux-headers-amd64

执行完成后可以选择

apt autoClean

清理一些更新的缓存
直接重启也行

reboot

重启后还是一样查看内核命令就行了
如果需要删除旧内核

先查看内核输出列表就行了

dpkg --list | grep linux-image

然后删除不需要的内核后面是内核版本号换掉然后执行

apt purge linux-image-***

升级系统

需要升级系统的话
先添加官方的源
例如阿里云的源,还是到更新源文件的列表里
添加如下(Debian11)

deb https://mirrors.aliyun.com/debian/ bullseye main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye main non-free contrib
deb https://mirrors.aliyun.com/debian-security/ bullseye-security main
deb-src https://mirrors.aliyun.com/debian-security/ bullseye-security main
deb https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib
deb https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib

全部替换掉也行
直接

apt update &&apt full-upgrade -y

然后静候半小时就可以了
中途会提示一些选择框,可以一路yes,如果出问题还是回快照吧

需要升级Debian12的话可以使用清华大学的源

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware

# deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware

deb https://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
# deb-src https://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware

还是一样更新,更新玩了以后
清除一些不用的软件或者依赖包就行了

apt autoremove -y && apt autoclean -y
sudo apt autoremove --purge
sudo apt clean
sudo apt autoclean

到这里就结束了有什么可以补充的直接评论指点一下

Centos系统

要在CentOS上升级内核,您可以按照以下步骤进行操作:

  1. 检查当前内核版本:运行以下命令来确定您当前正在使用的内核版本:
uname -r

这将显示当前正在运行的内核版本号。

  1. 更新系统软件包:在升级内核之前,确保您的系统已经更新到最新的软件包。运行以下命令来更新系统:
sudo yum update

这将更新您的系统上的所有软件包。

  1. 安装ELRepo存储库:ELRepo是一个第三方存储库,提供了最新的内核版本。运行以下命令来安装ELRepo存储库:
sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
sudo rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
  1. 安装新的内核:运行以下命令来安装最新的稳定内核版本:
sudo yum --enablerepo=elrepo-kernel install kernel-ml

这将安装ELRepo存储库中的最新内核版本。长期维护版本kernel-lt 如需更新最新稳定版选择kernel-ml

  1. 查看内核启动顺序
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /boot/grub2/grub.cfg

0 : CentOS Linux (5.4.108-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1160.11.1.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-1160.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-20210128140208453518997635111697) 7 (Core)
  1. 更新GRUB配置:在安装新内核后,需要更新GRUB引导加载程序的配置文件。运行以下命令来更新GRUB配置:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg

安装辅助工具grub2

yum install -y grub2-pc

设置内核默认启动顺序

grub2-set-default 0

在系统重新启动后,它将使用新安装的内核。

请注意,升级内核可能会对系统产生一些风险,例如与硬件兼容性或系统稳定性相关的问题。在进行内核升级之前,建议您备份重要数据,并确保您了解如何恢复到之前的内核版本,以防出现问题。

此外,上述步骤适用于CentOS 7。如果您使用的是其他版本的CentOS,请根据相应版本的文档或官方指南进行操作。