You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何安装与$(uname -r)版本匹配的树莓派内核头文件

树莓派安装匹配当前内核版本的内核头文件解决方案

问题概述

需要安装与$(uname -r)输出版本匹配的树莓派内核头文件用于内核模块开发,但尝试以下方法均失败:

  • 直接执行sudo apt install raspberrypi-kernel-headers,安装的头文件版本与当前内核不匹配
  • 通过rpi-update更新内核至最新版后,头文件仍未同步更新
  • 重装raspberrypi-kernel后,头文件版本依旧不匹配
  • 尝试apt install linux-headers-$(uname -r)无法找到对应包

可行解决方案

方法1:使用rpi-source自动匹配内核版本安装头文件

这是树莓派官方推荐的解决版本不匹配问题的工具,会自动下载并安装与当前运行内核完全匹配的头文件及源码:

  1. 安装依赖工具:
sudo apt install git bc bison flex libssl-dev make
  1. 下载并配置rpi-source脚本:
wget https://raw.githubusercontent.com/RPi-Distro/rpi-source/master/rpi-source -O /usr/local/bin/rpi-source && sudo chmod +x /usr/local/bin/rpi-source
/usr/local/bin/rpi-source --tag-update
  1. 执行脚本安装对应版本的头文件:
sudo rpi-source

执行完成后,/usr/src目录下会出现与uname -r匹配的内核头文件目录。

方法2:降级内核至apt仓库有对应头文件的版本

如果不需要最新内核,可以将内核降级到apt仓库中存在对应头文件的稳定版本:

  1. 查看apt仓库中可用的内核版本:
apt-cache policy raspberrypi-kernel
  1. 安装指定版本的内核和bootloader(替换下方版本号为仓库中存在的、与已安装头文件匹配的版本):
sudo apt install raspberrypi-kernel=1:1.20221208-1 raspberrypi-bootloader=1:1.20221208-1
  1. 重启系统后,验证内核版本:
uname -r
  1. 安装匹配的头文件:
sudo apt install raspberrypi-kernel-headers

方法3:手动下载对应版本的头文件deb包

  1. 找到与当前内核版本完全一致的raspberrypi-kernel-headers deb包(对应树莓派架构)
  2. 下载后执行安装:
sudo dpkg -i raspberrypi-kernel-headers_<对应版本号>_armhf.deb
  1. 若出现依赖问题,修复依赖:
sudo apt -f install

问题原因说明

  • rpi-update安装的是树莓派的测试版/最新预览版内核,而apt仓库中的raspberrypi-kernel-headers通常只同步稳定版内核的头文件,因此会出现版本不匹配
  • 直接通过apt安装内核头文件时,会默认安装仓库中最新的稳定版,与当前运行的(通过rpi-update升级的)内核版本不一致

内容的提问来源于stack exchange,提问作者Horiemon_Hack

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 05:30:53