Fedora内核源码经过长时间的发展,很多用户对Fedora 12 都很了解了,这里我发表一下个人理解,和大家讨论讨论。目前也有中文版本的Linux,如RedHat(红帽子),红旗Linux等。在国内得到了用户充分的肯定,主要体现在它的安全性和稳定性方面,它与Unix有许多类似之处。但目前这类操作系统目前使仍主要应用于中、高档服务器中。
安装Kernel Headers(头文件)
这个包提供Kernel Headers和makefiles足以应付kernel包中的模块编译。如果你需要安装驱动和某些第三方软件,你应该很需要Kernel Headers。如果一个驱动要求内核源码,那么也许安装Kernel Headers就已经足够了。Kernel Headers通过安装kernel-devel RPM包就可以得到。这个包可能没有被Fedora自动安装。这个软件包可以从你的Fedora DVD安装或者通过FTP和YUM在线安装。在Fedora软件仓库和Update软件仓库中在线查找同时确保他们与你的系统相匹配,使用uname命令。示例:
[wisfern@Wisfern ~]$ uname -rm
2.6.32.11-99.fc12.i686.PAE i686
如果你已经升级过你的kernel(使用yum),那么建议你使用yum来安装这个软件包。
[wisfern@Wisfern ~]$ sudo yum install kernel-devel
安装Kernel Source(内核源码)
一般来说无须安装Kernel Source除非你有一些特别的原因想要重新编译你的内核源码。无论如何Kernel hesders都是必须的。
围绕Kernel Sourcede的安装有三个基本步骤。
1.下载你想要的内核源码(与你当前的kernel想匹配如果需要)
2.安装SRC.RPM包
3.使用rpmbuild将源码转换成可用状态
NOTE: 以下的步骤将消耗至少400MB磁盘空间!
下载内核源码
获得内核源码(对于默认的Fedora内核源码)默认的内核源码可以通过任意Fedora镜像找到。在”/12/”目录下的 “/source/SRPMS/”目录中可以找到。示例:http://download.fedora.redhat.com/pub/fedora/linux/releases/12/Fedora/source/SRPMS/。
获得源码(对于已经升级过的Fedora内核源码)
如果你升级了你的内核,那么通常来说通过Fedora updates会有2或3个内核源码是可用的。
在大多数Fedora镜像站点上的update目录中寻找。示例:http://download.fedora.redhat.com/pub/fedora/linux/updates/12/SRPMS/。
通过’yum’来获得内核源码(对于最新的Fedora内核源码)
yum工具可以下载最新的内核源代码。如果没有找到,那么这里(还)没有任何更新,那就使用默认的Fedora内核源码。
[root@Wisfern Desktop]# yumdownloader – source kernel
安装内核源码
安装你之前选择和下载的kernel.src.rpm
[root@Wisfern Desktop]# rpm -ivh kernel-2.6.32.11-99.fc12.i686.rpm
Preparing… ########################################### [100%]
1:kernel ########################################### [100%]
准备内核源码
将源码转成可用状态:
[mirandam@charon downloads]$ sudo rpmbuild -bp –target=$(uname -m) /usr/src/redhat/SPECS/kernel.spec
源文件可以在/usr/src/redhat/BUILD/kernel-2.6.23/目录中找到。这里有两个有用的目录。
1.Linux-2.6.23.ARCH/
这里有包含了Fedora 补丁和更新的标准kernel.org内核源码。系统架构与uname -m的输出相匹配,一般来说是i686 ,如果你想,你可以让–target=选项使用noarch参数。
2.vanilla/
这里只包含标准的kernel.org的kernel(没有补丁和更新).
NOTE: Fedora编译和配置内核源码的详细过程可以在Fedora Wiki中找到。