在Linux系统中,内核源代码的存放位置取决于系统的安装方式和发行版策略。以下是详细说明:
官方发布版存放路径
从 kernel.org 下载的官方内核源码通常解压到:
/usr/src/linux-<version>/
例如:/usr/src/linux-5.15.0/
符号链接
系统可能创建一个方便的符号链接:
/usr/src/linux -> linux-<version>/
不同Linux发行版会修改官方内核并重新打包,存放位置可能不同:
Debian/Ubuntu
bash
sudo apt install linux-source-$(uname -r)
bash
/usr/src/linux-source-<version>.tar.xz
RHEL/CentOS
bash
sudo yum install kernel-devel
bash
/usr/src/kernels/<version>-<arch>/
Arch Linux
通过ABS获取:
/var/abs/core/linux/
编译内核模块时需要匹配的源码:
/lib/modules/$(uname -r)/build -> /usr/src/linux-headers-<version>/
bash
ls /lib/modules/$(uname -r)/build
bash
make kernelversion
bash
git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
bash
wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.15.84.tar.xz
目录 | 用途 |
---|---|
arch/ |
处理器架构相关代码(x86, arm等) |
drivers/ |
设备驱动程序 |
fs/ |
文件系统实现 |
include/ |
内核头文件 |
kernel/ |
核心子系统(调度、信号等) |
如需进一步操作(如编译内核),建议参考对应发行版的官方文档。