轶哥

妄图改变世界的全栈程序员。

Kali升级内核
  •   更新:2022-10-29 00:40:31
  •   首发:2022-10-29 00:40:31
  •   教程
  •   302

随着Kali Linux 2022.3版本的发布,Linux内核也随之更新为5.18.5(2020-07-07)。截止2022年10月29日,amd64架构下最新版内核为5.19.11(2022-10-10)。注意,目前Linux Kernel 5.19生命周期已结束,在 kernel.org 上被标记为 EOL ,这意味着该版本不会再有任何 Bug 修复和安全补丁。建议等待Kali发布最新的内核后及时升级。

然而随着Kali系统不断升级,中途部分软件包依赖破裂,导致内核无法用正常软件宝管理工具升级的方法升级。

先确保升级为最新的2022.3版本系统:

echo "deb http://http.kali.org/kali kali-rolling main non-free contrib" | sudo tee /etc/apt/sources.list
sudo apt update && sudo apt -y full-upgrade

查看当前系统版本:

grep VERSION /etc/os-release

返回类似:

VERSION="2022.3"
VERSION_ID="2022.3"
VERSION_CODENAME="kali-rolling"

查看当前系统Linux Kernel版本:

uname -a

返回类似:

Linux kali 5.19.0-kali2-amd64 #1 SMP PREEMPT_DYNAMIC Debian 5.19.11-1kali2 (2022-10-10) x86_64 GNU/Linux

注意,不同系统架构最新版本内核有差异。

查看当前支持的linux-headers

apt search linux-headers|grep headers

根据架构和实际情况选择,也可以直接执行下面代码

sudo apt install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,')

正常来说,上述安装也会带入对应版本的linux-image。通过apt search linux-image|grep image检查已安装版本和最新版本,如果没有安装对应版本,执行sudo apt install linux-image-$(uname -r|sed 's,[^-]*-[^-]*-,,') linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,')

Kali某一次升级中调整了grub配置和升级了grub版本。导致安装新版内核后并不会生成grub内核引导菜单,也不会设置新版为默认进入的内核版本,甚至丢失了update-grub命令。

解决方法即**重装grub**:

sudo apt update -y
sudo apt install --reinstall grub

更新 grub boot leader:

sudo update-grub

最后重建一下引导菜单

export GRUB_CONFIG=`sudo find /boot -name "grub.cfg"|head -1`
sudo grub-mkconfig -o $GRUB_CONFIG

查看所有可用的引导选项:

sudo grep 'menuentry ' $GRUB_CONFIG | cut -f 2 -d "'" | nl -v 0

这下就可以看到有哪些内核在引导选项了。

➜  ~ sudo grep 'menuentry ' $GRUB_CONFIG | cut -f 2 -d "'" | nl -v 0
     0    Kali GNU/Linux
     1    Kali GNU/Linux, with Linux 5.19.0-kali2-amd64
     2    Kali GNU/Linux, with Linux 5.19.0-kali2-amd64 (recovery mode)
     3    Kali GNU/Linux, with Linux 5.16.0-kali7-amd64
     4    Kali GNU/Linux, with Linux 5.16.0-kali7-amd64 (recovery mode)
     5    UEFI Firmware Settings

我们设置新版Linux内核为默认引导内核,例如我的是1,则执行:

sudo grub-set-default 1

重启,再次执行uname -a即可看到内核已经升级成功。

打赏
交流区

暂无内容

尚未登陆
发布
  上一篇
下一篇 (Office表格转HTML Table)  

评论回复提醒