- 首发:2022-10-29 00:40:31
- 教程
- 4379
随着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
即可看到内核已经升级成功。
暂无内容
感谢回复! Clang 在生成时沿用了 GCC 的版本号标识,我是不是可以理解为Clang 18.1.4生成时使用的就是GCC4.8,所以我后续使用gcc 9.4
gcov
就会有不兼容的问题抱歉,这块我也不太清楚,尝试寻求AI的帮助吧。
我在这个过程中遇到了各种问题- -,现在在UDC core: g_serial: couldn't find an available UDC卡住了,请问大佬有什么解决方案吗,还是说我前置的设置就错了呢,> 这个需求很特殊。是可以的,但是比较困难,需要修改驱动配置。
好思路呀!!
关于hex编辑器,网上没找到特别好用的(小白没办法),最后在vscode上扩展一搜hex,第一个安装一下就可以用vscode进行hex编译了