Linux有问必答:如何在Debian或Ubuntu上安装完整的内核源码
创始人
2024-03-01 15:01:37
0

问题:我需要为我的Debian或Ubuntu下载并安装完整树结构的内核源码以供编译一个定制的内核。那么在Debian或Ubuntu上有什么可行的方法来下载完整的内核源码呢?

在给你的Linux安装完整内核源码之前,先问问自己是否真的需要这样做。如果你仅仅是尝试去编译一个内核模块或是为内核定制驱动,你并不需要完整的内核源码树。你只需要安装一些与内核对应的头文件,这样就足够了。

只有在你需要生成一个定制的内核,而且内核源码中的一些内核默认设置要被你调整了的情况下,你才需要完整的内核源码树。

这里将会解答如何在Debian或Ubuntu的库中下载并安装完整树结构的内核源码。你可以在https://www.kernel.org/pub/linux/kernel/下载官方的内核源码,不过使用发行版软件仓库可以允许你下载包含补丁的内核源码。

在Debian上安装完整的内核源码

在下载内核源码之前,先安装dpkg-dev,其中包含你在Debian上生成源代码时需要的开发工具套件。不仅如此,dpkg-dev中还包含在用来解压Debian源码包并自动打补丁的工具dpgk-source。

$ sudo apt-get install dpkg-dev 

然后,运行以下命令下载完整的内核源码。

$ apt-get source linux-image-$(uname -r) 

伴随着完整内核源码(linux_X.X.XX.orig.tar.xz)的还有一些可用的内核补丁(linux_X.X.X+XXX.debian.tar.xz)和源码控制文件(linux_XXXX.dsc),这些都将被下载并存储到当前目录。在.dsc文件中会指出如何给内核源码打补丁。

当下载完成,以上的命令将会自动调用工具dpkg-source将下载的内核源码解压到当前的目录中,与此同时根据.dsc文件来下补丁。

最终完整的内核源码树将会以"linux-X.X.XX"的形式呈现在当前目录中。

在Ubuntu上安装完整内核源码

如果你想安装完整内核源码的话,以上在Debian上的那一套做法在Ubuntu上仍然奏效。

在Ubuntu上还有另一套方法安装完整内核源码。事实上,你可以查一下由Canonical为Ubuntu不同发行版维护的内核源码树。

$ sudo apt-get install git
$ git clone git://kernel.ubuntu.com/ubuntu/ubuntu-$(lsb_release --codename | cut -f2).git

举个例子,如果你使用的是Ubuntu 14.04,以上的命令将会查看Git的"ubuntu-trusty"仓库中的代码。

一旦在你对Git仓库的查询结束后,使用以下的命令来安装用来访问生成内核源码树所需依赖的重要开发包。

$ sudo apt-get build-dep linux-image-$(uname -r) 

via: http://ask.xmodulo.com/install-full-kernel-source-debian-ubuntu.html

作者:Dan Nanni 译者:martin qi 校对:Caroline

本文由 LCTT 原创翻译,Linux中国 荣誉推出

相关内容

把AI搬进Linux:媒体...
导语:最近有开发者基于Debian推出了Shadowfetch,一...
2026-08-02 19:14:38
Xfce 桌面终极对决:F...
谁:两个自带 Xfce 桌面的发行版——Fedora Xfce 与...
2026-07-22 14:40:01
Buildroot vs ...
在嵌入式与边缘计算开发中,操作系统的选择直接决定了产品的开发效率、...
2026-07-20 15:54:01
麒麟软件申请基于阈值复检的...
国家知识产权局信息显示,麒麟软件有限公司申请一项名为“一种基于阈值...
2026-07-16 22:31:41
研究人员揭露Linux K...
IT之家 7 月 7 日消息,研究人员 Hyunwoo Kim 发...
2026-07-14 13:35:28
雷蛇推进灵刃18 Ubun...
近日,科技媒体Phoronix披露了一则重要消息:雷蛇正为其旗舰级...
2026-07-08 23:01:45

热门资讯

“Linux 中国” 开源社区... 这是一个艰难的决定 —— 这不是调侃,而是当你真正做出改变了你十几年生活轨迹的决定时,你就会明白这个...
硬核观察 #1263 德国铁路... #1 德国铁路公司招聘 Windows for Workgroups 3.11 管理员该职位要求了解...
人工智能教程(七):Sciki... 在本系列的 上一篇文章 中,我们用 TensorFlow 构建了第一个神经网络,然后还通过 Kera...
关闭 WSL 中正在运行的 L... 以下是使用 WSL 关闭在 Windows 内运行的 Linux 系统的不同方法。你使用 WSL 在...
MX Linux 23.2 “... 最新的 MX Linux 23.2 小版本更新带来了基本的改进和新增功能。MX Linux 推出了 ...
硬核观察 #1262 网络上最... #1 网络上最古老的软件存档库之一即将关闭美国新墨西哥州立大学(NMSU)最近宣布,即将于 2024...
如何在 RHEL 上通过绑定配... 在 Linux 中,你可以根据自己的需要创建高级网络设置,如 网络绑定 Network Bondin...
Linux Matrix 消息... Matrix 用户可以升级 Fractal 6 了!Fractal 是目前 最好的 Matrix 客...
如何通过 VLC 使用字幕 使用 VLC 媒体播放器播放和管理字幕的新手指南。我是一个超级动漫迷,如果你想观看最新的剧集,那么你...
硬核观察 #1261 X 计划... #1 X 计划在奥斯汀建立内容审核总部据报道,该部门将招聘 100 名全职员工,将主要关注 CSE ...