linux编译内核

上传人:夏** 文档编号:505066169 上传时间:2023-05-24 格式:DOC 页数:8 大小:62KB
返回 下载 相关 举报
linux编译内核_第1页
第1页 / 共8页
linux编译内核_第2页
第2页 / 共8页
linux编译内核_第3页
第3页 / 共8页
linux编译内核_第4页
第4页 / 共8页
linux编译内核_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《linux编译内核》由会员分享,可在线阅读,更多相关《linux编译内核(8页珍藏版)》请在金锄头文库上搜索。

1、linux编译内核作者:北南南北来自:LinuxSir.Org提要:编译内核主要是通过内核实现某些功能,比如iptables 需要内支持;所有的硬件的支持也是通过内核实现的;本文只是简单的给初学者讲一下编译内核的流程;+正文+一、为什么要编译内核;有时我们为了实现某些功能,比如对iptables的防火墙有些需要内核支持;还有实现一些硬件 的支持等,这时我们需要重编内核;二、内核源码版本的选择;如果发行版本提供内核源码,最好还是用发行版本提供的;比如 Fedora 4.0提供了很多版本的 内核源码;我们安装好后,他自带的配置文件大多能满足我们的需要,对于新手来说,根据自 带的内核的配置文件.co

2、nfig,我们也能学到一点如何配置内核。也没有什么难的,熟能生巧罢了;如果从kernel.org下载最新稳定版本的内核也是可以的;三、内核源码安装或解压;对于Fedora Core 4.0 来说,内核源码是放在/usr/src/kernels 目录中;如果通过在线升级 内核,也是放在这个目录中;如果您的系统中的 /usr/src/kernels/中没有内容,说明您没有安装内核的源码包kernel-devel 软件包;您可以通过软件包管理器来补装,请参考 Fedora / Redhat 软件包管理指南如果您用Fedora Core 4.0,我建议您在保留老内核的基础上,在线下载最新版本的内核ke

3、renl-devel和对应版本的kernel 或者从kernel.org 下载,有时可能新的kerenl已经解决了您所面对的问题,这时就没有必要编译内核了;如果您是通过在线安装的内核源码包,比如通过apt+synaptic或者yum安装的,内核源码会被放到/usr/src/kernel 下的目录中,您要进入相对应的目录进行编译;在线更新软件包,请参考 Fedora / Redhat 软件包管理指南,推荐apt+sy naptic 工具;如果您是是下载kernel和kernel-devel 的rpm包,可以通过来安装;rootlocalhost beinan# rpm -ivh kern el*

4、.rpm如果您是从 kernel.org 下载的类似 linux-2613.tar.bz2或者 linux-2613.tar.gz的,您要把下载下来的文件移到/usr/src目录中解压;然后进入解压的目录中进行配置和编译;rootlocalhost beinan# mv linux-2613.tar.bz2rootlocalhost beinan# cd /usr/src/rootlocalhost src# tar jxvf lin ux-2.6.12.3.tar.bz2提示:本文以linux-2.6.12.3为例,其实通过发行版的升级版的kernel-devel 和从kernel.org

5、下载下来的差不多,大同小异;不同的是通过在线升级的rpm格式的内核源码包,有配置文件.config可以参考;安装到的目的地是/usr/src/kernel 对FC4.0来说;如果您要高编译和配置内核,四、内核的配置;1、 进入目录执行 make mrproper ,对于从kernel.org下载而来的tar.bz 格式的源码包;rootlocalhost src# cd lin ux-2.6.12.3/rootlocalhost li nux-2.6.12.3#rootlocalhost src# cd lin ux-2.6.12.3/rootlocalhost li nux-2.6.12.3

6、# make mrproperrootlocalhost li nux-2.6.12.3# make me nuconfig对于Fedora Core 4.0,如果您是通过在线安装的 kernel和kernel-devel 新版本的包,比如 是2.6.12-1.1398_FC4-i686 ,你可以直进入/usr/src/kernel/相应的目录中直接执行 makemenuconfig ;利用发行版本提供的.config来配置,这样方便点。不要 make mrproper,否则.config 就没有了;这也是为什么要用发行版本提供的内核源码升级包的原因;其它配置和安装大同小异;模仿总可以吧;2.

7、 简要的配置内核;进入配置内核的配置模式后,我们可能一无所知,看下面;内核配置有两种方法,一种是直接置入内核* ;另一种是编成模块M ;两种方法各有优点;直接编入内核的,比如设备的启动,不再需要加载模块的这一过程了;而编译成模块,则需要 加载设备的内核支持的模块;但直接把所有的东 西都编入内核也不是可行的,内核体积会变大,系统负载也会过重。我们编内核时最好把极为重要的编入内核;其它的如果您不明白的,最好 用默认。1) 移动键盘上下左右键,按 Enter 进入一个目录。把指针移动到 Exit 就退出当前目录到上级 目录;2) 针对自己机器存在的问题进行修改,比如大内存的支持;选择自己机器的 CP

8、U;,然后按ENTER进入;按 ENTERS入;移动键盘到 Processor type and features - 找到 Processor family (Pentium-Pro) -进入后我们发现有好多CPU勺型号可选;一般的情况下要根据bash-3.00# cat /proc/cpuinfo输出的信息来选,比如我们的是 Celeron (P4) 代的,应该选如下的,当然默认的 486 也是可以正常运行的,既然我们重编一次内核,就得选中对应型号 的,也许性能有所提高呢;Processor family (Pentium-4/Celeron(P4-based)/Pentium-4 M/X

9、eon)对大内存支持;如果内存是1G或者1G以上,但小于4G的,就要选4G支持;如果超过4G的, 要选64G的支持;High Memory Support (4GB) - (X) 4GB( ) 64GB还有比如声卡等硬件,需要我们一步一步的查看;如果有不明之处,就要按 shift+ ?的组合 键来查看说明。 一般的情况下, 2.6.x 的内核会根据机器的情况自动配出一个文件, 只需要我们 来查看一下,把重要的地方改改就行了;再举个例子:比如我现在所用的声卡是 intel ac97 的,我应该怎么配置呢?首先要知道自己的声卡的芯片组,我们要通过 lspci -v 来查看;rootlocalhos

10、t beinan#lspci -v只查看声卡的,应该用如下的方法:rootlocalhost beinan# lspci -v |grep audio00:1f.5 Multimedia audio controller: Intel Corp. 82801DB(ICH4) AC97 Audio Controller (rev 03)AC97的配通过上面的输出,我们知道这台机器用的是 intel AC97 声卡;所以我们要特别注意找到 Device Drivers - Sound - Sound card support 声卡的支持,这个是一定要选中的吧; Adva need Li nux S

11、ou nd Architecture对声卡支持的 ALSA驱动的支持;下面有OSS驱动,只是一部份。如果想用 OSS的驱动更全的,可以去买;其它的就看如下的选 吧; Sequencer support Sequencer dummy client OSS Mixer API OSS PCM (digital audio) API* OSS Sequencer API RTC Timer support* Verbose printk Debug大多是默认的就好,如果您不知道是做什么用的,或者怎么用;然后我们再向下看有Generic devices -进入里面 Dummy (/dev/null)

12、 soundcard Virtual MIDI soundcard MOTU MidiTimePiece AV multiport MIDI UART16550 serial MIDI driver Generic MPU-401 UART driverISA devices - 如果您用ISA声卡就在这里面选;PCI devices -如果您用 PCI 声卡,就在这里面选,集成声卡也在这里;USB devices - 这是USB声卡内核支持选项;我有一个这样的声卡,但没有试过;PCMCIA devices - 这是PCMCIA声卡的选项,我还没有看过这样的声卡呢;如果您有,就在 这里面动动手

13、吧。因为我用的是 Intel 集成的声卡,所以要在 PCI 中选择,我们在 中可以看到有两个与 INTEL 有关的; Intel/SiS/nVidia/AMD/ALi AC97 Controller 这个才是 Intel AC97 声卡的; In tel/SiS/nVidia/AMD MC97 Modem (EXPERIMENTAL) 这个是机器集成的 INTEL 猫的蜂鸣器 的;因为我发现如果把猫的蜂鸣器的驱动也选上,可能造成两个冲突。所以只能选上面的那个;我们再回到 Open Sound System - 中看看,与我用的声卡是不是有关的? Open Sound System (DEPRE

14、CATED) Intel ICH (i8xx) audio support OSS sound modules Loopback MIDI device support Microsoft Sound System support我们也可以看到 OpenSound System 中也有好多的声卡驱动,大家根据前面的 lspci -v 来选择 吧。3)对于操作系统所采用的文件系统的支持要编入内核,最好不要编成模块;(重要)比如我的 Fedora core 4.0 所采用的文件系统用的是 ext3 ,所以我要把它直接编入内核;好 处是不受模块丢失或者损坏而不能启动系统;而有时您把系统所采用的文件系统编译成模块, 出现VFS错误,也有这方面的事,可能是您没有把ext3加入到相应的加载模块的配置文件中,所以我们为了减少麻烦,把风险降到最低,还是要直接置入内模的好;File systems - Ext3 journalling file system support* Ext3 extended attributes* Ext3 POSIX Access Control Lists* Ext3 Security Labels如果您还有其它的硬盘分区要读取,比如是 reiserfs 、ext2 、fat 、fat32 、ntfs 等,这样的可 以编成模块

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号