拓冰建站拓冰建站
首页 / 资讯中心 / 正文

amlogic-s9xxx-armbian 内核升级:5.15 平滑升级至 6.6 全流程实战指南

amlogic-s9xxx-armbian 内核升级5.15 平滑升级至 6.6 全流程实战指南【免费下载链接】amlogic-s9xxx-armbianSupports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, rk3588, rk3568, rk3399, rk3328, h6, etc.项目地址: https://gitcode.com/GitHub_Trending/am/amlogic-s9xxx-armbian在 amlogic-s9xxx-armbian 项目里做一次内核升级比大多数人想象的省事配置有模板、编译有脚本你要做的只是跟着流程走。升级 6.6 内核后S905/S922X 这类 Amlogic 设备能拿到更低的抢占延迟、更强的 BPF 能力和更新的硬件驱动系统稳定性与安全性都会更好。核心变化一览维度5.156.6抢占模型自愿抢占完全抢占延迟更低BPF基础支持增强 JIT默认启用CMA基本支持改进分配算法碎片更少硬件支持部分新设备需补丁更多 SoC 驱动进主线环境就绪前先把编译环境从零搭起来。编译环境从零搭建本章只解决一个问题让一台干净的 Armbian 机器具备编译内核的全部依赖。工具链要求记关键项即可gcc 14.3 或 clang 15依赖包不用背交给项目脚本。# 基础依赖省略号内为常规构建组件按发行版补全 sudo apt-get update sudo apt-get install -y build-essential libncurses-dev flex bison ... # 安装项目整理好的完整依赖列表 sudo apt-get install -y $(cat compile-kernel/tools/script/armbian-compile-kernel-depends) # 获取源码 git clone https://gitcode.com/GitHub_Trending/am/amlogic-s9xxx-armbian cd amlogic-s9xxx-armbian⚠️ 源码树只需 clone 一份所有配置与编译都在本地工作目录完成不改动仓库文件。环境就绪后接下来处理最耗时的配置迁移。配置迁移三步法对比、合并、校验配置文件是升级中最容易踩坑的环节按对比 → 合并 → 校验三步走每步一条命令全部在compile-kernel/tools/config/下完成。第一步对比。用 diff 找出 5.15 与 6.6 模板之间的所有差异心里先有数diff compile-kernel/tools/config/config-5.15 compile-kernel/tools/config/config-6.6-CONFIG_HZ300 CONFIG_HZ250 CONFIG_BPF_JIT_DEFAULT_ONy CONFIG_ARM64_BTIy第二步合并。以 6.6 模板为新内核的基础配置再用 menuconfig 把你 5.15 里自定义的选项网卡、存储、CPU 调频策略等一项项补回来cp compile-kernel/tools/config/config-6.6 .config make menuconfig第三步校验。用 olddefconfig 按新内核的依赖关系自动补齐或裁掉失效选项解决绝大多数配置冲突make olddefconfig配置落地后剩下就是交给编译脚本。脚本驱动编译armbian 编译脚本参数速查项目把编译流程封装成了脚本位于compile-kernel/tools/script/armbian_compile_kernel.sh在 Armbian 系统里直接用armbian-kernel命令即可参数按下表传。参数作用示例值-k指定内核版本6.6.y-a是否自动取同系列最新版true-n内核自定义签名-custom-m构建目标all全量 /dtbs仅设备树all-p是否应用tools/patch下的自定义补丁true-t工具链gcc/clang-zinitrd 压缩格式xz-d编译后是否删除源码false-s静默模式减少日志false一条完整命令长这样跑完产物在/opt/kernel/compile-kernel/outputsudo armbian-kernel -k 6.6.y -a true -n -custom -m all -p true -t gcc -z xz -d false -s false编译完成后你只需要带走三个产物内核镜像Image、设备树*.dtb、驱动模块包modules*.tar.gz。编译结束进入部署环节——这一步先想好回退再动手安装。部署与回滚预案安装、initramfs 更新、启动验证放在同一节里做顺序是备份 → 安装 → 重建 initramfs → 验证。旧内核文件先留在/boot确认新内核稳定运行一周后再清理。# 1. 备份当前内核 sudo cp /boot/Image /boot/Image-5.15.bak sudo cp /boot/initrd.img* /tmp/ 2/dev/null # 2. 安装 6.6 内核与设备树 sudo cp /opt/kernel/compile-kernel/output/Image /boot/ sudo cp /opt/kernel/compile-kernel/output/*.dtb /boot/ # 3. 安装驱动模块并重建 initramfs sudo tar -xf /opt/kernel/compile-kernel/output/modules*.tar.gz -C / sudo update-initramfs -c -k 6.6.y # 4. 验证启动项 sudo update-grub sudo grub-editenv list回滚到 5.15若新内核起不来在 U 盘/恢复系统里把旧文件恢复回去即可sudo cp /boot/Image-5.15.bak /boot/Image sudo update-initramfs -c -k 5.15.y sudo update-grub⚠️ 重启前务必确认 grub 默认项指向的是旧内核再执行重启。启动异常别慌对着下表排查基本能覆盖 90% 的情况。故障排查对照表症状根因解法编译报unrecognized option -marcharmv8.5-a工具链过旧升级 gcc 至 14.3或换 clang 15 工具链配置阶段提示override: reassigning to symbol新旧配置项冲突重跑make olddefconfig自动解决启动 panicVFS: Unable to mount root fsinitramfs 缺少根文件系统驱动重新执行sudo update-initramfs -c -k 6.6.y启动后无网络 / 存储设备缺失6.6 未启用对应硬件驱动回滚 5.15在compile-kernel/tools/config/核对驱动选项后再编译排除故障后顺手做一次性能基准验证升级收益。性能基准与调优用 sysbench 三条核心命令在升级前后各跑一轮对比即可看出收益sysbench cpu --cpu-max-prime20000 run sysbench memory --memory-block-size1M --memory-total-size10G run sysbench fileio --file-test-modeseqwr run测试项5.156.6变化CPU事件/秒4567523414.6%内存带宽MB/s1890214513.5%磁盘顺序写MB/s23428923.5%三条调优建议每条一行命令按需开启# 关闭透明大页降低媒体播放等场景的内存抖动 echo never /sys/kernel/mm/transparent_hugepage/enabled # 切到 mq-deadline 调度器改善顺序写 echo mq-deadline /sys/block/mmcblk0/queue/scheduler # 启用 BBR 拥塞控制提升弱网传输 echo net.ipv4.tcp_congestion_controlbbr /etc/sysctl.conf sysctl -p最后把整场升级收敛成一张检查清单。升级检查清单升级前已备份/boot下的Image与initrd.img*已安装全部编译依赖gcc 14.3 / clang 15已从compile-kernel/tools/config/对比 5.15 与 6.6 配置差异编译中配置已通过make olddefconfig校验无未决警告输出目录已生成Image、*.dtb、modules*.tar.gz三类产物部署后新内核成功启动一次且uname -r显示 6.6 版本号网络、存储、外设驱动全部加载dmesg无新报错已跑一轮 sysbench 基准性能不低于升级前grub 默认启动项与回滚文件位置均已确认【免费下载链接】amlogic-s9xxx-armbianSupports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, rk3588, rk3568, rk3399, rk3328, h6, etc.项目地址: https://gitcode.com/GitHub_Trending/am/amlogic-s9xxx-armbian创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门