FC5-(linux)内核编译,新手艰辛的历程

用LINUX开发也有段时间了,一直没对内核进行编译过,今天静下来,决定对我的内核进行编译。
上网上 找了一些资料,实验过程如下(按照原 文章的实验过程,略有改动,整理)

***********************************************************************
作者:lee
来自:http://lee133.cublog.cn/
参考文献:编译内核操作流程 ──为新手指南  等等~~~~~()
                 http://fedora.linuxsir.org/main/?q=node/66
摘要:Linux我喜欢,FC是我的最爱,但是在我的ACer本本上运行不能使我满意,太慢了!
      决定编译内核,发挥他的优点,但是对于我这样的新手编译内核是很困难的事情,呵呵!这是在没有编译前的想法,现在看来还是很简单的哦!把我的经验分享一下,由于水平有限,必有错误指出,欢迎指出!!
***********************************************************************

一:确定自己的内核版本,很简单:
[root@localhost download]# uname -a
Linux lee-linuxOS 2.6.16-1.2096_FC5 #1 Wed Apr 19 05:14:36 EDT 2006 i686 i686 i386 GNU/Linux
呵呵! 这是我的,我现在使用的是2.6.16-1.2096_FC5的内核,昨天刚升级的。
二:安装内核的源码包:
 
1.下载地址:http://download.fedora.redhat.com/pub/fedora/linux/core/updates/5/SRPMS/

  2.安装源码:
我还是莱鸟一个,刚开始的时候想的太简单了,直接rpm -ivh *****了,结果不知道安装到那里去了,找不到了,呵呵! 当然也就不能编译内核了。后来参考了很多资料才知道自己有犯了一个错误。呵呵!! 废话不说了,安装吧!
[root@localhost download]# rpm -i kernel-2.6.17-1.2187_FC5.src.rpm
warning: user brewbuilder does not exist - using root
warning: group brewbuilder does not exist - using root
warning: user brewbuilder does not exist - using root
warning: group brewbuilder does not exist - using root
warning: user brewbuilder does not exist - using root
warning: group brewbuilder does not exist - using root
warning: user brewbuilder does not exist - using root
warning: group brewbuilder does not exist - using root
warning: user brewbuilder does not exist - using root
warning: group brewbuilder does not exist - using root
warning: user brewbuilder does not exist - using root
warning: group brewbuilder does not exist - using root
[root@localhost download]# useradd brewbuilder
[root@localhost download]# groupadd brewbuilder

[root@localhost download]# rpm -i kernel-2.6.17-1.2187_FC5.src.rpm
[root@localhost download]# cd /usr/src/redhat/SPECS
[root@localhost  SPECS]# ls
kernel-2.6.spec
[root@lee-linuxOS SPECS]#rpmbuild -bp kernel-2.6.spec
  到这里很不辛,有出现错误了,error: Architecture is not included: i386,只好去man rpmbuild,这永远是最有用的东西。终于让我在这里发现了问题所在了。这个命令还有一下--target PLATFORM 选项,看到这个我就马上相到了这个错误了。马上来加上这个选项,
[root@localhost  SPECS]#rpmbuild -bp --target i686 kernel-2.6.spec
OK!!!!!!!!!!!!!!
接着继续吧:
[root@localhost  SPECS] cd ..
[root@localhost  SPECS] cd  BUILD
[root@localhost  BUILD]#ls
kernel-2.6.17
[root@localhost BUILD]# cd ker*
[root@localhost kernel-2.6.17]# ls
Config.mk  linux-2.6.17.i686  vanilla  xen  xen-vanilla
[root@localhost kernel-2.6.17]# cd linux*
[root@localhost linux-2.6.17.i686]# ls -a
.              include         README                 .tmp_kallsyms3.S
..             init            REPORTING-BUGS         .tmp_System.map
arch           ipc             scripts                .tmp_versions
block          Kbuild          security               .tmp_vmlinux1
.config        .kconfig.d      sound                  ..tmp_vmlinux1.cmd
.config.old    kernel          System.map             .tmp_vmlinux2
configs        .kernelrelease  .tmp_kallsyms1.o       ..tmp_vmlinux2.cmd
COPYING        lib             ..tmp_kallsyms1.o.cmd  .tmp_vmlinux3
CREDITS        MAINTAINERS     .tmp_kallsyms1.S       ..tmp_vmlinux3.cmd
crypto         Makefile        .tmp_kallsyms2.o       usr
Documentation  Makefile.orig   ..tmp_kallsyms2.o.cmd  .version
drivers        mm              .tmp_kallsyms2.S       vmlinux
fs             Module.symvers  .tmp_kallsyms3.o       .vmlinux.cmd
.gitignore     net             ..tmp_kallsyms3.o.cmd
[root@localhost  linux-2.6.17.i686]#

 现在就是你将要编译的内核的代码所在的目录,呵呵! 当然你也可以直接从kernel.org下载原代码进行编译,但是我还是建议使用FC5改进的代码哦! 呵呵!! 个人爱好拉!

3.开始最重要的,配置内核:
[root@localhost linux-2.6.17.i686]# make menuconfig
呵呵!! 接下了就是深奥的东西了,我是莱鸟,暂时还不懂。我是网上找的,我转载到后面,你们自己看!

4.编译内核:
[root@localhost  linux-2.6.17.i686]# make
 慢慢等待把。很久之后你就看到结果了!! 呵呵!

5.安装内核模块
[root@localhost  linux-2.6.17.i686]# make modules_install
 安装之后,
[root@localhost  linux-2.6.17.i686]# ls /lib/mo*
2.6.17-1.2080_FC5  2.6.17-1.2096_FC5  2.6.17-prep
 上面的
2.6.17-prep就是刚才编译的东东!!!

6。安装内核:
[root@localhost  linux-2.6.17.i686] make install
sh /usr/src/redhat/BUILD/kernel-2.6.17/linux-2.6.17.i686/arch/i386/boot/install.sh 2.6.17-prep arch/i386/boot/bzImage System.map "/boot"
 这样有个好处就是,你可以什么都不用干,自动完成。
[root@localhost linux-2.6.17.i686]# cd /boot
[root@localhost boot]# ls
config-2.6.15-1.2054_FC5      System.map-2.6.15-1.2054_FC5
config-2.6.17-1.2187_FC5      System.map-2.6.17-1.2187_FC5
grub                          System.map-2.6.17-prep
initrd-2.6.15-1.2054_FC5.img  vmlinuz
initrd-2.6.17-1.2187_FC5.img  vmlinuz-2.6.15-1.2054_FC5
initrd-2.6.17-prep.img        vmlinuz-2.6.17-1.2187_FC5
System.map                    vmlinuz-2.6.17-prep



在看一下grub.conf

[root@localhost boot]#cd grub
[root@localhost grub]# vi grub.conf

( 根据自己系统,有的在/etc/grub.conf)
===================================================================
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You do not have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /, eg.
#          root (hd0,5)
#          kernel /boot/vmlinuz-version ro root=/dev/hda6
#          initrd /boot/initrd-version.img
#boot=/dev/hda
default=1
timeout=5
splashimage=(hd0,5)/boot/grub/splash.xpm.gz
hiddenmenu
title Fedora Core (2.6.17-prep)
        root (hd0,5)
        kernel /boot/vmlinuz-2.6.17-prep ro root=LABEL=/ rhgb quiet
        initrd /boot/initrd-2.6.17-prep.img
title Fedora Core (2.6.17-1.2187_FC5)
        root (hd0,5)
        kernel /boot/vmlinuz-2.6.17-1.2187_FC5 ro root=LABEL=/ rhgb quiet
        initrd /boot/initrd-2.6.17-1.2187_FC5.img
title Fedora Core (2.6.15-1.2054_FC5)
        root (hd0,5)
        kernel /boot/vmlinuz-2.6.15-1.2054_FC5 ro root=LABEL=/ rhgb quiet
        initrd /boot/initrd-2.6.15-1.2054_FC5.img
title Windows XP
        rootnoverify (hd0,0)
        chainloader +1


=====================================================================

End,reboot,看看效果何如?? 呵呵!!

 附录:(转载的文章,很不错的,详细那!!感谢作者!)
**************************************************************
作者:
puNk!d
来自:http://forums.gentoo.org/viewtopic-t-377564.html
内核配置指南
-by puNk!d

前言/废话

相信每个linuxer第一次编译内核都和我一样,面对庞大的options无从选择,论坛里的内核编译介绍资料又不多,有也不完整。官方的英文文档虽然 很全,但是没几个愿意花精力看。大概花了2天时间写了这篇文章,把绝大部分的内核编译选项都给列出来了,并提供相应的解释。当然,我也是个菜鸟,能力有 限,里面很多的东西自己都没能弄明白,只是照英文文档翻译了几个关键的句子。所以肯定会有很多的错误和疏忽,希望大家一起来修正这篇文章。我仅仅是提供个 框架,权当抛砖引玉,更重要的大家一起来完善,帮助我修正里面的错误,提供更详细准确的解释。

基于目前最新内核2.6.13写的。
部分内容参考了中国linux公社的gxl117兄的按步就班编译2.6内核

正题
_____________________________________________________________________________________

Code maturity level options

[*] Prompt for development and/or incomplete code/drivers #推荐选上,这样可以显示还在开发或者还没有完成的代码与驱动.因为有许多设备可能必需选择这个选项才能进行配置,实际上它是安全的。

[*] Select only drivers expected to compile cleanly #选择这个选项你将不会看到一些已知的存在问题的驱动程序选项,默认的情况下也是选择的。如果你有设备没有找到驱动选项,你可以将这一项去掉,或许就可以 找到相关驱动了,不过它可能是有BUG的。

General setup

( ) Local version - append to kernel release #据Lance兄说安装系统可能出现网络问题的话,可以通过设定该值为-1或-2等来解决,具体情况请看本文第二页Lance兄的回复

[*] Support for paging of anonymous memory (swap) #使你的内核支持虚拟内存

[*] System V IPC #为进程提供通信机制,这将使系统中各进程间有交换信息与保持同步的能力。有些程序只有在选Y的情况下才能运行,所以不用考虑,这里一定要选。

[*] POSIX Message Queues #POSIX标准的消息队列

[*] BSD Process Accounting #这里选择Y将会让内核为用户层的进程建立一个帐目(进程通过一个特殊的系统调用来通知内核),当程序退出时内核会将进程的相关信息记录到帐目文件中,主 要包括进程的创建时间、 创建者,内存占用等信息。如果你需要就Y吧:)

[*] BSD Process Accounting version 3 file format #将进程信息写入一种新日志格式,并且将会不兼容以前的v0/v1/v2日志格式。不过既然是新的格式,必然有它的优势,还是选上吧。

[*] Sysctl support #这将提供一个接口让你可以动态的更改一些核心参数与变量,而不需要重新启动系统。打开这个选项将会增加内核的体积至少8KB。如果你的内核仅用制作安装与恢复系统系统盘那么可以不选,以减少对内存的占用。

[ ] Auditing support #SElinux需要这个,而且依赖于system-call auditing support

[ ] Enable system-call auditing support #同样是SElinux依赖于它

--- Support for hot-pluggable devices

[*] Kernel Userspace Events #推荐选上,除非你的内存实在不够

[ ] Kernel .config support #这将会把内核的配置信息与相关的文档说明编译进内核中,以后可以使用一些工具来提取它用来重新构建内核,一般不用选它。

[ ] Enable access to .config through /proc/config.gz #通过/proc/config.gz查看.config文件

[ ] Configure standard kernel features (for small systems) ---> #用于优化,精简内核的,不过最好还是别用,毕竟我们不完全懂内核

Loadable module support

[*] Enable loadable module support #让你的内核支持模块,必选

[*] Module unloading #让你卸载不再使用的模块,选上比较好

[ ] Forced module unloading #强制性卸除模块,还是不要选好了

[ ] Module versioning support (EXPERIMENTAL) #这个选项将让你可以使用其它版本内核中编译的模块,不过并不可靠,所以一般我们不选择它

[ ] Source checksum for all modules #帮助查看由哪些源码构建了模块,一般用不着选

[*] Automatic kernel module loading #选择这个选项,可以使内核在需要一些模块时自动调用modprobe命令来加载需要的模块,推荐选上

Processor type and features

Subarchitecture Type (PC-compatible) ---> #这是一个比较新的特性,主要的目的是使Linux可以支持多种PC标准,一般我们使用 的PC机是遵循所谓IBM兼容结构(pc/at)。这个选项可以让你选择一些其它架构。我们一般选择PC-compatible就可以了。
(×) PC-compatible
( ) AMD Elan
( ) Voyager (NCR)
( ) NUMAQ (IBM/Sequent)
( ) SGI 320/540 (Visual Workstation)

Processor family (Pentium-4/Celeron(P4-based)/Pentium-4 M/Xeon)

[ ] Generic x86 support #这个选项提供了对X86系列CPU最大的兼容性,用来支持一些很少见的x86体系的CPU,它可能会降低一些系统性能。所以如果你的CPU能够在上面的列表中找到就不要选这个吧。

[*] HPET Timer Support #这也是一个新的特性,HPET是intel制定的新的用以代替传统的8254(PIT)中断定时器与RTC的定时器,全称叫作高精度事件定时器。如果你 有一台较新的机器就选它吧,一般它是一个安全的选项,即使你的硬件不支持HPET也不会造成问题,因为它会自动用8254替换。

[ ] Symmetric multi-processing support #如果你使用多处理器系统或含超线程技术的CPU就选吧

Preemption Model (Preemptible Kernel (Low-Latency Desktop)) --->

[*] Preempt The Big Kernel Lock #可抢先式内核。也就是说被一些优先级很高的程序可以先与一些低优先级的程序执行,即使这些程序是在核心态下执行(这实际上仍然不是真正的抢先式内核)。 从而减少内核潜伏期,提高系统的响应。当然在一些特殊的点的内核是不可抢先的,比如内核中的调度程序自身在执行时就是不可被抢先的。这个特性可以提高桌面 系统、实时系统的性能,所以还是选上吧。

[ ] Local APIC support on uniprocessors #如果你的CPU支持APIC就选上,通常都可以选上

[*] Machine Check Exception #如果你的系统出现一些问题比如CPU过热,内核将会在屏幕上打印相关信息来提醒你。这个功能是需要硬件支持的。你可以查看/proc/cpuinfo看 看是否有mce标志,有的话就选吧。如果你十分十分的不幸,选了它之后出现问题,可以在启动时加nomce参数来关闭它。

<*> Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium #打开这个选项将会检查你机器上可能存在的问题,如果有一个非致命错误出现将会自动的修复并且记录,这可以帮助你查出程序出现问题的原因,是一个不错的选 项,当然它只能用在AMD Athlon/Duron / Intel Pentium 4这类CPU上。如果你正好在用它们中的一个你就选吧。

< > Toshiba Laptop support #针对Toshiba笔记本的,用来直接设置BIOS,不过只能对Toshiba自己的BIOS起作用,所以即使是Toshiba的笔记本而BIOS不是 Toshiba的还是无用,绝大多数可以不用选。

< > Dell laptop support #同上,一般不要选

[ ] Enable X86 board specific fixups for reboot #用来重启是自动修复的,这个功能还不是完善,可以不要选,选了也不会什么问题

< > /dev/cpu/microcode - Intel IA32 CPU microcode support #这个选项将让你可以更新Intel IA32系列处理器的微代码,当然你还必须在文件系统选项中选择devfs才能正常的使用它。如果你把它译为模块你还需要在modprobe.conf中 加上这一行alias char-major-10-184 microcode 内核本身并不带有微代码的二进制文件,你可以到这个网址去得到新的信息 http://www.urbanmyth.org/microcode/

< > /dev/cpu/*/msr - Model-specific register support #这个选项桌面用户一般用不到,它主要用在Intel的嵌入式CPU中的,这个寄存器的作用也依赖与不同的CPU类型而有所不同,一般可以用来改变一些 CPU原有物理结构的用途,但不同的CPU用途差别也很大。

< > /dev/cpu/*/cpuid - CPU information support #这会在/dev/cpu中建立一系列的设备文件,用以让过程去访问指定的CPU。一般不用选。

Firmware Drivers --->  
 
< > BIOS Enhanced Disk Drive calls determine boot disk (EXPERIMENTAL) #这将可以打开实模式下BIOS中的增强磁盘设备服务,以决定从哪个磁盘上启动。这一般是安全的,不过大多数BIOS提供商都没有实现这个特性。

High Memory Support (off) ---> #内存超过4G的就选上

Memory model (Flat Memory) --->

[ ] Math emulation #如果你使用的CPU的是486SX以前的话,那才用的着

[*] MTRR (Memory Type Range Register) support #这个选项是用来启动pentinum pro和pentinum II 的特殊功能,用以提高显卡性能,不过一般还是选上较好,装Nvidia显卡驱动时需要它

[ ] Boot from EFI support (EXPERIMENTAL) #EFI引导的支持 ,EFI是IA64(Itanium安腾)上的类似PC机BIOS的东西,但功能更强大.

[ ] Use register arguments (EXPERIMENTAL) #要安装N卡驱动的就别选这个

[*] Enable seccomp to safely compute untrusted bytecode

Timer frequency (250 HZ) --->

[ ] kexec system call (EXPERIMENTAL) (NEW) #这是个新的功能,可以使你不必重启而切换到另一个内核中,不过还是个实验品,没特别需要还是别选吧

Power management options (ACPI, APM)

[*] Power Management support #如果你想让你的Linux支持高级电源管理(也就是平常我们说的软关机、系统休眠等)需要选择它。

[ ] Power Management Debug Support #bug报告支持,不用选

[ ] Software Suspend #选择这个选项你可以挂起你的计算机(有点象XP中的休眠),打开这项功能后,你可以使用swsusp或者shutdown -z 来挂起你的计算机。这样系统会将你当前正在进行的工作(也就是当前内存中的内容)作成一个镜象保存到你的交换分区中,在你下一次启动时使用启动参数 “resume=/dev/你的交换分区”,内核就会将上一次的工作内核从镜象文件中恢复到内存,这可以大大提高系统的启动速度。当你不想恢复上次的工作 时向内核传递参数“noresume"。不过系统启动后你的交换分区将不可以使用,你可以使用mkswap命令来重新格式化你的交换分区。这个功能不需要 高级电源管理的支持。

() Default resume partition # 指定保存镜象的分区,没使用Software Suspend的可以不用选

ACPI (Advanced Configuration and Power Interface) Support ---> #从这里进入ACPI电源管理的配置界面,要注意ACPI与APM不能同时使用,如果你同时配置了这两者,那么在系统启动时如果发现一个可工作的ACPI 设备那么APM将被关闭,ACPI会被加载:

[*] ACPI Support #要想让你的系统使用ACPI来管理你的电源就要选上它,另外要想让它起作用,你还要在系统中安装acpid守护程序。

[ ] Sleep States (EXPERIMENTAL) #选择这个选项可以使你的系统具有挂起的功能,也就是说你可以暂时中断你的工作,让你的系统处与一种低电能消耗的状态(sleep state),不过目前该功能还不完善,可以不要选上。

[ ] /proc/acpi/sleep (deprecated) (NEW) #既然都说了不赞成使用,那就别选了

< > AC Adapter #这是用来支持移动系统中的交流适配器的,以指示当前系统是不是在使用交流电,对于台式机不需要这个选项。

< > Battery #这个选项用于通过/proc/acpi/battery来向用户提供移动系统中的电池状态信息。同上面那个选项一样对台式机没有作用。

<*> Button #这个选项用于注册基于电源按钮的事件,比如power, sleep等,当你按下按钮时事件将发生,一个守护程序将读取/proc/acpi/event,并执行用户在这些事件上定义的动作比如让系统关机。

< > Video #高级配置与电源接口中的视频部分的支持

< > Generic Hotkey (NEW) #热键驱动,没必要选

< > Fan #这个选项提供对系统风扇的控制支持,可以通过用户层的程序来对系统风扇进行控制(比如打开,关闭,读取当前风扇的运行状态等,不过只有极少数的硬件支持它)。不过要是torsmo能显示出风扇的状态,蛮酷的嘛!

<*> Processor #打开这个选项将让你的系统具有处理IDIE状态的能力,也就是说可以让你的处理器在空闲时节省电能。选上吧!

<*> Thermal Zone #当你的系统温度过高时,ACPI可以利用这个选项来控制你的系统,及时调整系统的工作状态以保护你的CPU,非常棒的一个特性一定要选呀,要不然也就不用使用ACPI了。(当然这需要硬件的支持)

< > ASUS/Medion Laptop Extras #这主要是为ASUS生产的笔记本电脑准备的,以提供对这些系统上那些额外的按钮们的支持,用户可以通过它们来打开或者关闭LCD的背光,调整亮度、定制 LED的闪烁指示等功能。用户可以通过/proc/acpi/asus来改变这些设置。

< > IBM ThinkPad Laptop Extras #同上,为IBM ThinkPad设计的,你问问联想这东西还有用不?

< > Toshiba Laptop Extras #还是同上,Toshiba笔记本的。

(0) Disable ACPI for systems before Jan 1st this year #这功能挺怪的,既然使用了ACPI为何又要关掉,自己填个年份就是了,譬如2008,填0的话这个就不起作用了。

[ ] Debug Statements #错误报告支持,别选!

[ ] Power Management Timer Support #如果你的内核日志上经常出现“Losing too many ticks!”或是你的笔记本电脑没有HPET的话,就选上它。

< > ACPI0004,PNP0A05 and PNP0A06 Container Driver (EXPERIMENTAL) #支持CPU和内存的热拔插?估计用不到,别选。

APM (Advanced Power Management) BIOS Support --->

< > APM (Advanced Power Management) BIOS support #针对笔记本电源管理的,并提供电源状态。应该是省电用的。选了Y的话系统时间会恢复到出厂状态,而且问题好像还蛮多的,会引起其他的怪问题。你要选的话 还是看一下内核帮助吧,问题太多了,我就不一一列举了。

CPU Frequency scaling --->

[ ] CPU Frequency scaling #用来调整CPU时钟频率的,以达到省电效果,和AMD的Cool n' Quiet很相似,不过还要借助其他工具得以实现。不嫌麻烦的试一下吧。

Bus options (PCI, PCMCIA, EISA, MCA, ISA)

[*] PCI support #不可能不选吧!

PCI access mode (Any) --->

[*] PCI Express support #如果你的显卡是PCI插口的,那就选上啦!有其他的PCI Express设备,也要选上。

[ ] Legacy /proc/pci interface #用来提供PCI设备信息的,同样需要借助工具,而且以后会取消该功能,别选了。

[*] PCI device name database #可以得到PCI设备的名称数据,而不是简单的ID数字代码,一般都可以选上,会增大内核大约80k的体积。

[ ] ISA support #看看你的电脑还有不由ISA设备不,基本上现在都被PCI取代了,而且较新的主板也不支持ISA了

[ ] EISA support #EISA总线的支持,在486上这些总线很常见,不过也是个古老的玩意了,一般不要选的。

[ ] Vesa Local Bus priming #Vesa总线支持,同EISA一样,存在于486上,应该都没有这东西了,可以不选![/color]

[ ] Generic PCI/EISA bridge #如果你的主板既有PCI插槽又有EISA的,那就选上。

[ ] EISA virtual root device #主板只有EISA没PCI插槽就选上。

[ ] EISA device name database #可以得到EISA设备的名称数据,而不是简单的ID数字代码,你连EISA都没有的话这个还选什么啊!

[ ] MCA support #在一些IBM PS/2和笔记本上有这个东西,我不知道什么东西,你知道的话就选上吧!

< > NatSemi SCx200 support #National Semiconductor SCx200这个是什么东西哦?有的话你就选上

PCCARD (PCMCIA/CardBus) support --->

< > PCCard (PCMCIA/CardBus) support #使用笔记本的请选上,别问为什么,你比我清楚,我没有笔记本,

PCI Hotplug Support --->

< > Support for PCI Hotplug (EXPERIMENTAL) #这东西风险挺大的,一般只有服务器系统才可能用到,我们还是不要选好了。

Executable file formats #是Linux kernel中ABI支持的可执行的文件格式,通过ABI在linux中可以执行SCO, solaris等操作系统的程序按官方文档的推荐,配置成下面的就行了。

[*] Kernel support for ELF binaries

< > Kernel support for a.out and ECOFF binaries

<*> Kernel support for MISC binaries

Networking

--- Networking support

Networking options --->

<*> Packet socket #对于那些直接与网络设备通讯的程序需要这个,例如tcpdump(舍命么东西?)。最好还是选上

[*] Packet socket: mmapped IO #选上能获得更快的通讯速度,当然官方文档解释是你不确定的话就别选,不过选上也没问题吧!

<*> Unix domain sockets #X Windows和Syslog都需要这个,当然选上了

<*> PF_KEY sockets #弄不太清到底有什么用,官方文档推荐选上

[*] TCP/IP networking #这个能不选吗!

[ ] IP: multicasting #如果你的电脑使用的带宽很大,用于视频,音频数据传输,那你选上,一般都用不着选


[*] IP: advanced router

[*] IP: kernel level autoconfiguration

< > IP: tunneling #假如你是笔记本用户,需要经常更换网络的话,就选上,其他用户不用选

< > IP: GRE tunnels over IP #使计算机能够压缩IPv4协议或IPv6协议的数据并发送到另一协议中,现在应该还用不上

[ ] IP: multicast routing #如果你打算把你的linux系统作为路由使用的话,就选上

[ ] IP: ARP daemon support (EXPERIMENTAL) #这个选项可以不要选,官方文档解释是已经过时的东西(不过为什么又列入EXPERIMENTAL了呢?)

[*] IP: TCP syncookie support (disabled per default) #这个是为了抵御SYN FLOODING侵入的,安全起见,选上!

<*> IP: AH transformation #支持IPsec AH用的,必须选上IPSec选项

<*> IP: ESP transformation #支持IPsec ESP用的,必须选上IPSec选项

<*> IP: IPComp transformation #支持IPComp协议的,IPsec也需要这个,选上!

<*> IP: tunnel transformation #选了IPComp transformation和tunneling就需要这个,那就选上喽!

< > IP: TCP socket monitoring interface #如果你希望你的系统支持IPv6协议的话就选上

[ ] TCP: advanced congestion control (NEW) #安全的选择就是不选它!

IP: Virtual Server Configuration --->

< > IP virtual server support (EXPERIMENTAL) #似乎是服务器用的,具体你看一下这个网站http://www.linuxvirtualserver.org

< > The IPv6 protocol #现在可能还用不到IPv6协议,不选

[ ] Network packet filtering (replaces ipchains) ---> #如果你打算把你的计算机作为局域网的防火墙及网关的话,就选上,否则可以
不要选

SCTP Configuration (EXPERIMENTAL) --->

< > The SCTP Protocol (EXPERIMENTAL) #Stream Control Transmission Protocol,一个新的传输层协议,与tcp,udp同层,不过很少有软件使用这个协议的,一般可以不要选

< > Asynchronous Transfer Mode (ATM) (EXPERIMENTAL) #如果你有ATM卡就选上,注意此ATM并非提款机,而是一种高速网络。估计咱们这
都没有。

< > 802.1d Ethernet Bridging #如果你打算把你的系统作为以太网的桥连的话就选上,我也不太明白这东西,反正大多数人都可以不要选,懂这个的自然会选上

< > 802.1Q VLAN Support #第三层交换支持。意在同一个多层交换机内划分不同的广播域和冲突域,然后使用第三方软件Zebra/Quagga进行各个网间路由。想了解更多的话就去 这个网站http://www.candelatech.com/~greear/vlan.html

< > DECnet Support #由Digital(现在的Compaq)制作的一些东西需要这个协议,我是不知道这是什么东西,不选应该不会出问题

< > ANSI/IEEE 802.2 LLC type 2 Support #如果你懂这个,你就选上吧

< > The IPX protocol #需要支持Novell网络协议的话就选上,不过我们还是用不着选吧

< > Appletalk protocol support #苹果电脑间用来通讯的协议,如果你的linux电脑与其他的苹果电脑相连,需要进行通讯的话就选上(等我有
了Mac,我再也不瞎折腾linux了^_^)

< > CCITT X.25 Packet Layer (EXPERIMENTAL) #不确定的话就不要选

< > LAPB Data Link Driver (EXPERIMENTAL) #同上

[ ] Frame Diverter (EXPERIMENTAL) #继续同上

< > Acorn Econet/AUN protocols (EXPERIMENTAL) #这是个很老,而且很慢的网络协议,现在用不着选了

< > WAN router #适用于长远距离之间的电脑通讯,需要很昂贵的设备,没钱够的着你选这个

[ ] QoS and/or fair queueing ---> #用于路由器或NAT,它可以修改网内各个计算机的各个数据流优先级。但只有使用相应第三方软件修改各个数据流CoS后,才有效。并且占用一定的CPU资源和网络带宽。
Network testing --->

< > Packet Generator (USE WITH CAUTION) #用来测试分析网络压力及运行状况的,没啥意思,别选

[ ] Amateur Radio support ---> #你懂这个的话就选上

< > IrDA (infrared) subsystem support ---> #你的电脑有红外线设备的话就选上,笔记本用户都可以选

< > Bluetooth subsystem support ---> #有蓝牙设备的就选上

Device Drivers

Generic Driver Options --->

[*] Select only drivers that don't need compile-time external firmware #不确定的话就选上

[*] Prevent firmware from being built #不需要升级固件的就选上,不过不知道这里的固件到底指哪类。不确定还是选上好了(官方推荐)

< > Hotplug firmware loading support #热拔插固件需要的,提供内核外模块载入支持。不过我不清楚这到底有什么用,哪些属于Hotplug
firmware,我不选。

Memory Technology Devices (MTD) --->

< > Memory Technology Device (MTD) support #闪存这些设备用到了这个,没有的话就不要选

Parallel port support --->

< > Parallel port support #并行端口支持,你有打印机的话就选上

< > PC-style hardware #选了上面那个就把这个也选了

< > Multi-IO cards (parallel and serial) #并行端口的媒体输入输出卡?不明白,不选!

[ ] Use FIFO/DMA if available (EXPERIMENTAL) #可以提高打印速度,同时让系统知道并行端口设备占用了哪个IRQ值,有打印机你还不选!

[ ] SuperIO chipset support (EXPERIMENTAL) #安全的选择就是不选

[ ] IEEE 1284 transfer modes #不清楚打印机的工作,可以不要选,但是你清楚的话就选吧

Plug and Play support --->

[*] Plug and Play support #即插即用支持,当然选上

[ ] PnP Debug Messages #bug报告支持,不选

--- Protocols

[ ] ISA Plug and Play support #ISA设备的即插即用支持,现在差不多用不到ISA了,不选

[ ] Plug and Play BIOS support (EXPERIMENTAL) #帮助防止主板与其他设备的冲突,按理说可以选,但是官方文档就解释如果你的电脑没有ISA设备而且支持ACPI电源管理就可以不要选了,不太明白,不过 应该可以不要选了。

[ ] Plug and Play ACPI support (EXPERIMENTAL) #还不太成熟的功能,还是不选吧

Block devices --->

<*> Normal floppy disk support #要使用磁盘的当然选上

< > XT hard disk support #你不会有这个古董吧?不选

<*> Parallel port IDE device support #使用IDE的光驱和硬盘的都选上好了

< > Compaq SMART2 support #又是Compaq,前面提到了,我没用过它的东西,不选。你有的话,记得把前面提到的DECnet Support也选上啊

< > Compaq Smart Array 5xxx support #同上,还是不选

< > Mylex DAC960/DAC1100 PCI RAID Controller support #不清楚,你有这个设备你就选啦

< > Micro Memory MM5415 Battery Backed RAM support (EXPERIMENTAL) #自己选的去,我没有见过这设备

<*> Loopback device support #用来加载ISO或软盘镜像文件的,选上

< > Cryptoloop Support #这个用在ext3和ReiserFS格式上都不太安全,那就没必要选了

< > Network block device support #让你的电脑成为网络块设备的客户端,同服务器通讯...不太懂,一般不选

<*> Promise SATA SX8 support #支持SATA设备,现在大家买的都是SATA硬盘了,选上

< > Low Performance USB Block driver #USB的储存设备吧,你有就选。

< > RAM disk support #把内存当作硬盘用,储存文件,以前看过一篇文章,据说说这样可以加速系统/程序的启动,不过占用了内存,还是不用的好

( ) Default number of RAM disks #选了上面这个,自己再确定到底要分出多少内存作为硬盘空间

(4096) Default RAM disk size (kbytes) #别更改了,就这样吧,即便是你没选RAM disk support

[ ] Initial RAM disk (initrd) support #还是和上面有关,用来在正是加载根分区前就加载模块的

( ) Initramfs source file(s) #不确定的话就别管它

[ ] Support for Large Block Devices #大型块设备支持(超过2TB的)。几乎都可以不要选它了

< > Packet writing on CD/DVD media #刻录光驱需要选上这个

IO Schedulers --->

<*> Anticipatory I/O scheduler #预知I/O任务调度,不明白。官方文件说通常选上这个是个Good Choice,那就选上吧

<*> Deadline I/O scheduler #依然是个不错的选择,还是选上

<*> CFQ I/O scheduler #对于桌面用户而言,应该选上

< > ATA over Ethernet support #提高对以太网块设备的ATA支持,自己选的去,我是用不上

ATA/ATAPI/MFM/RLL support --->

<*> ATA/ATAPI/MFM/RLL support #有硬盘或光驱的话就选上啦

<*> Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support #用来设置主从设备,并提供最多20个ATA/IDE硬盘/光驱/磁盘的支持

--- Please see Documentation/ide.txt for help/info on IDE drives

[ ] Support for SATA (deprecated; conflicts with libata SATA driver) #因为存在2个SATA驱动,会与libata SATA驱动相冲突,那就不要选

[ ] Use old disk-only driver on primary interface #同样是老设备才用的到,一般都不要选

<*> Include IDE/ATA-2 DISK support #如果你只有SCSI设备的话就不要选,否则最好选上

[ ] Use multi-mode by default #如果你出现了以下错误 hda: set_multmode: status=0x51 { DriveReady SeekComplete Error } hda: set_multmode: error=0x04 { DriveStatusError } 那就选上,否则不要选

<*> Include IDE/ATAPI CDROM support #有光驱你就选上

< > Include IDE/ATAPI TAPE support (EXPERIMENTAL) #我也没用过这东西,你有的话就选上

< > Include IDE/ATAPI FLOPPY support #有IDE磁盘的选上?

< > SCSI emulation support #这个似乎已经不需要了,以前刻录光碟需要,但现在内核已经支持直接写入了。

[ ] IDE Taskfile Access #不确定就不选

--- IDE chipset support/bugfixes

<*> generic/default IDE chipset support #这当然得选上啦

[ ] CMD640 chipset bugfix/support #用于486和奔腾1的Sis和Neptune芯片的主板好像需要这个。

[ ] CMD640 enhanced support #你有CMB640 IDE接口而且你的主板BIOS没有提供社为为PIO模式以及预取的话就选上,否则不要选 (说的不太
明白,不好意思)

[ ] PNP EIDE support #如果你有类似的EIDE即插即用设备就选上

[*] PCI IDE chipset support #IDE接口驱动的PCI设备?不明白。还是选上好了

[*] Sharing PCI IDE interrupts support #如果你想打开硬盘或光驱的DMA就选上

[ ] Boot off-board chipsets first support #不确定的话就不选

< > Generic PCI IDE Chipset Support #对此内核毫无帮助(官方文档解释),那就不选

< > OPTi 82C621 chipset enhanced support (EXPERIMENTAL) #你有的话就选

< > RZ1000 chipset bugfix/support #用于486和奔腾1的Neptune芯片主板,而且会降低磁盘性能,不选

[*] Generic PCI bus-master DMA support #如果你想打开硬盘或光驱的DMA就选上

[ ] Force enable legacy 2.0.X HOSTS to use DMA #从2.0内核中的代码取得的,没啥用处,不选

[*] Use PCI DMA by default when available #除非你的主板芯片是VIA VP2,否则都可以选

[ ] Enable DMA only for disks #通常不选

< > AEC62XX chipset support #以下这一大堆的你自己看的去,是什么主板芯片就选什么

< > ALI M15x3 chipset support

< > AMD and nVidia IDE support

< > ATI IXP chipset IDE support

< > CMD64{3|6|8|9} chipset support

< > Compaq Triflex IDE support

< > CY82C693 chipset support

< > Cyrix CS5510/20 MediaGX chipset support (VERY EXPERIMENTAL)

< > Cyrix/National Semiconductor CS5530 MediaGX chipset support

< > HPT34X chipset support

< > HPT36X/37X chipset support

< > National SCx200 chipset support

< > Intel PIIXn chipsets support

< > IT821X IDE support (NEW)

< > NS87415 chipset support

< > PROMISE PDC202{46|62|65|67} support

< > PROMISE PDC202{68|69|70|71|75|76|77} support

< > ServerWorks OSB4/CSB5/CSB6 chipsets support

< > Silicon Image chipset support

< > SiS5513 chipset support

< > SLC90E66 chipset support

< > Tekram TRM290 chipset support

< > VIA82CXXX chipset support

[*] Other IDE chipset support #如果你的主板芯片不在上面这列就最好选上,而且一般选上也比较好

[ ] IGNORE word93 Validation BITS #这个似乎会导致些问题。不选

SCSI device support --->

--- SCSI device support

[ ] legacy /proc/scsi/ support #有SCSI的话选上

--- SCSI support type (disk, tape, CD-ROM) #下面这些设备你有哪样就勾选哪样

< > SCSI disk support

< > SCSI tape support

< > SCSI OnStream SC-x0 tape support

< > SCSI CDROM support

< > SCSI generic support #有SCSI扫描仪和刻录光驱的话就选上

< > SCSI media changer support (NEW) #不确定可以不选

--- Some SCSI devices (e.g. CD jukebox) support multiple LUNs

[ ] Probe all LUNs on each SCSI device #不知道什么东西,你有就选

[ ] Verbose SCSI error reporting (kernel size +=12K) #有SCSI的话还是选上

[ ] SCSI logging facility #同样不太明白,自己看着办

SCSI Transport Attributes --->

< > Parallel SCSI (SPI) Transport Attributes #输出信息的,不知道到底干什么的,可以不选

< > FiberChannel Transport Attributes #同上

< > iSCSI Transport Attributes #继续同上

SCSI low-level drivers ---> #以下这一大堆真的很头疼,你有哪个选哪个,不过注意那些SATA支持的啊,你可能要选

< > 3ware 5/6/7/8xxx ATA-RAID support

< > 3ware 9xxx SATA-RAID support

< > 7000FASST SCSI support

< > ACARD SCSI support

< > Adaptec AHA152X/2825 support

< > Adaptec AHA1542 support

< > Adaptec AHA1740 support

< > Adaptec AACRAID support

< > Adaptec AIC7xxx Fast -> U160 support (New Driver)

< > Adaptec AIC7xxx support (old driver)

< > Adaptec AIC79xx U320 support

< > Adaptec I2O RAID support

< > Always IN2000 SCSI support

[ ] LSI Logic New Generation RAID Device Drivers

< > LSI Logic Legacy MegaRAID Driver

< > Serial ATA (SATA) support

< > AHCI SATA support

< > Intel PIIX/ICH SATA support

< > NVIDIA SATA support

< > Promise SATA TX2/TX4 support

< > Pacific Digital SATA QStor support

< > Promise SATA SX4 support

< > Silicon Image SATA support

< > SiS 964/180 SATA support

< > ULi Electronics SATA support

< > VIA SATA support

< > VITESSE VSC-7174 SATA support

< > BusLogic SCSI support

< > DMX3191D SCSI support

< > DTC3180/3280 SCSI support

< > EATA ISA/EISA/PCI (DPT and generic EATA/DMA-compliant boards) sup

< > Future Domain 16xx SCSI/AHA-2920A support

< > Intel/ICP (former GDT SCSI Disk Array) RAID Controller support

< > Generic NCR5380/53c400 SCSI PIO support

< > Generic NCR5380/53c400 SCSI MMIO support

< > IBM ServeRAID suppor

< > Initio 9100U(W) support

< > Initio INI-A100U2W support

< > IOMEGA parallel port (ppa - older drives)

< > IOMEGA parallel port (imm - newer drives)

< > NCR53c406a SCSI support

< > SYM53C8XX Version 2 SCSI support

< > IBM Power Linux RAID adapter support

[ ] enable driver internal trace

[ ] enable adapter dump support

< > PAS16 SCSI suppor

< > PSI240i support

< > Qlogic FAS SCSI support

< > Qlogic ISP FC SCSI support

< > Qlogic QLA 1240/1x80/1x160 SCSI support

< > QLogic ISP2100 host adapter family support

< > QLogic ISP2200 host adapter family support

< > QLogic ISP2300 host adapter family support

< > QLogic ISP2322 host adapter family support

< > QLogic ISP63xx host adapter family support

< > QLogic ISP24xx host adapter family support (NEW)

< > Emulex LightPulse Fibre Channel Support

< > Simple 53c710 SCSI support (Compaq, NCR machines)

< > Symbios 53c416 SCSI support

< > Tekram DC395(U/UW/F) and DC315(U) SCSI support (EXPERIMENTAL)

< > Tekram DC390(T) and Am53/79C974 SCSI support

< > Trantor T128/T128F/T228 SCSI support

< > UltraStor 14F/34F support

< > UltraStor SCSI support

< > Workbit NinjaSCSI-32Bi/UDE support

< > SCSI debugging host simulator

Old CD-ROM drivers (not SCSI, not IDE) --->

[ ] Support non-SCSI/IDE/ATAPI CDROM drives #如果你的光驱既不是SCSI又不是IDE,也不是ATAPI的就选上,不过现在一般都用不着选了

Multi-device support (RAID and LVM) --->

[ ] Multiple devices driver support (RAID and LVM) #如果你需要RAID(磁盘阵列)和LVM(逻辑卷管理程序)就选上

Fusion MPT device support ---> #看不懂这些东西,我对硬件没啥研究,你需要的话就选

< > Fusion MPT ScsiHost drivers for SPI (NEW)

< > Fusion MPT ScsiHost drivers for FC (NEW)

IEEE 1394 (FireWire) support --->

< > IEEE 1394 (FireWire) support #火线设备,有就选

--- Subsystem Options

[ ] Excessive debugging output #又是错误报告支持,不选

[ ] OUI Database built-in #没啥用,不选

[ ] Build in extra config rom entries for certain functionality #看不懂,不选

[ ] Export all symbols of ieee1394's API (NEW) #通常都不要选这个

--- Device Drivers

--- Texas Instruments PCILynx requires I2C

<*> OHCI-1394 support #usb和IEEE 1394接口协议的driver,选上吧

--- Protocol Drivers

< > OHCI-1394 Video support #有这东西就选

< > SBP-2 support (Harddisks etc.) #可以使你的DVD设备,硬盘与IEEE 1394相接,这高科技怎么用啊?你选


< > Ethernet over 1394 #功能不完善,不用选

< > OHCI-DV I/O support #你有DV机,需要传送数据的话就得选

<*> Raw IEEE1394 I/O support #有IEEE 1394的话就选

< > IEC61883-1 Plug support #不清楚这设备,还是你选择

I2O device support --->

< > I2O support #I2O自适应接口...我只是照直翻,你有的话就选,我是不知道什么东西

Network device support --->

[*] Network device support #你要上网的话当然得选这个了

<*> Dummy net driver support #这个一定要裝!但如果你之前使用了MRTG,装完之后得重新启动一次MRTG

< > Bonding driver support #应该是梆定多网卡用的,你用双网卡就选上吧

< > EQL (serial line load balancing) support #如果你同时连上2个网络,例如2个猫都连上了,那就得选

< > Universal TUN/TAP device driver support #不知道干什么的,不用选

< > General Instruments Surfboard 1000 #没有SURFboard 100 internal cable modem的话就别选,估计你也没有

ARCnet devices --->

< > ARCnet support #有这种网卡你就选

Ethernet (10 or 100Mbit) ---> #里面的实在不想列举和解释了,你的网卡是什么芯片的就选哪个,这个简单

Ethernet (1000 Mbit) ---> #同上

Ethernet (10000 Mbit) ---> #继续同上

Token Ring devices --->

[ ] Token Ring driver support #你有这种网卡就选,应该是局域网用的

Wireless LAN (non-hamradio) --->

[ ] Wireless LAN drivers (non-hamradio) & Wireless Extensions #无限网络用的,笔记本用户都选上为好

Wan interfaces --->

[ ] Wan interfaces support #广域网用的,前面提到了,你有就用,一般都不需要

[ ] FDDI driver support #还是你有就用,大部分人都不需要这个

< > Digital DEFEA and DEFPA adapter support (NEW) #你连上面的那个都没选的话,这个更不要选了

< > SysKonnect FDDI PCI support (NEW) #同上

[ ] HIPPI driver support (EXPERIMENTAL) #更加奇怪的东西了,不选

< > PLIP (parallel port) support #组成小型局域网用的,我也不太清楚组网的情况,自己看着办

<*> PPP (point-to-point protocol) support #使用ADSL的话就一定要选

[ ] PPP multilink support (EXPERIMENTAL) #不确定就不选

[ ] PPP filtering #不确定就不选

<*> PPP support for async serial ports #用ADSL MODEM的话就选

<*> PPP support for sync tty ports #T1这种高速网络需要这个,应该可以不选的,不过gentoo的安装文件说这个必选,那还是选上好


<*> PPP Deflate compression #压缩传送数据包的,选上最好

< > PPP BSD-Compress compression #不确定的可以不选

<*> PPP over Ethernet (EXPERIMENTAL) #ADSL用到的PPPoE,选上吧

< > SLIP (serial line) support #你懂这个就选

[ ] Fibre Channel driver support #你有这个设备就选

< > Traffic Shaper (EXPERIMENTAL) #一种虚拟的网络设备用来限制对外流量的,用不到吧,不选

< > Network console logging support (EXPERIMENTAL) #想把内核信息记录在网络上就选上,一般不选

ISDN subsystem --->

< > ISDN support #如果你使用的是ISDN的话就选上,不过现在很少用ISDN了

Telephony Support --->

< > Linux telephony support #应该指的就是所谓的IP电话吧,你需要的话就选上

Input device support --->

--- Generic input layer (needed for keyboard, mouse, ...)

--- Userland interfaces

--- Mouse interface

[*] Provide legacy /dev/psaux device #不确定的话就选上

(1024) Horizontal screen resolution #以下2个如果你有数字化转换器或图形输入板的话,你需要设定以下屏幕的大小,以保证这些设备能够准
确读取屏幕位置,没有的话可以不设定,设置了也不会造成任何问题

(768) Vertical screen resolution

< > Joystick interface #玩游戏需要摇杆/手柄/力馈器之类的就选上

< > Touchscreen interface #触摸屏接口...用不到,不选

< > Event interface #如果你需要记录输入信息事件的话就选上,不过应该没这样的要求,通常不要


< > Event debugging #别说了,不选

--- Input Device Drivers

--- Keyboards --->

[*] Mouse ---> #鼠标你总得选上吧!

[ ] Joysticks ---> #有这项设备就选

[ ] Touchscreens ---> #同上

[ ] Miscellaneous devices ---> #不确定可以不选

Hardware I/O ports --->

--- Serial I/O support

<*> Serial port line discipline #如果你的输入设备需要与RS232串口通讯的话就选上,一般都要选上


< > ct82c710 Aux port controller #不确定的不要选

< > Parallel port keyboard adapter #不确定的不要选

< > PCI PS/2 keyboard and PS/2 mouse controller #不太清楚这玩意,不选吧

< > Raw access to serio ports #不太明白这东西,不选也可以

<*> Gameport support #如果你有Joysticks这些设备或者声卡包含Game port都可以选上,所以我们还是选上吧

Character devices --->

[ ] Non-standard serial port support #大部分人都不需要选这个

Serial drivers --->

<*> 8250/16550 and compatible serial support #这个还是应该选上的

[ ] Console on 8250/16550 and compatible serial port #没显卡的选上??还是不要选了

[ ] 8250/16550 device discovery via ACPI namespace #不确定可以不选

(4) Maximum number of 8250/16550 serial ports #这个默认的就可以了

[ ] Extended 8250/16550 serial driver options #不确定的话可以不选

--- Non-8250 serial port support

< > Digi International NEO PCI #Digi International's Neo series卡你有不?不选
Support

[ ] Legacy (BSD) PTY support #不勾选是安全的

(256) Maximum number of legacy PTY in use #默认就是了,反正你前面的都没勾选

< > Parallel printer support #如果你把打印机连上的是并行端口,那就选上

[ ] Support for console on line printer #不确定可以不选

< > Support for user-space parallel port device drivers #不确定可以不选

< > Texas Instruments parallel link cable support #相信你也没这设备,不选

IPMI --->

< > IPMI top-level message handler #不确定就不选

Watchdog Cards --->

[ ] Watchdog Timer Support #看门狗,需要定期为其提供信号,否则将会认为cpu出错而对其复位,嵌入式系统中常用的一种东西

< > Intel/AMD/VIA HW Random Number Generator support #不确定也可以不选

< > /dev/nvram support #实在不确定这个要不要选

<*> Enhanced Real Time Clock Support #你应该选上这个特别是你使用的是多处理器或含超线程技术的处理器

<*> Generic /dev/rtc emulation #不确定,选上吧

< > Double Talk PC internal speech card support #你有这个就选

< > Siemens R3964 line discipline #不确定可以不选

< > Applicom intelligent fieldbus card support #不确定可以不选

< > Sony Vaio Programmable I/O Control Device support (EXPERIMENTAL) #如果你的笔记本是Sony的VAIO,就选上
Ftape, the floppy tape device driver --->

< > Ftape (QIC-80/Travan) support #连接软驱的录音机是什么哦?不选

<*> /dev/agpgart (AGP Support) #你用的是AGP显卡就选上

< > ALI chipset support #下面这些你的主板是什么芯片的就选哪个

< > ATI chipset support

< > AMD Irongate, 761, and 762 chipset support

< > AMD Opteron/Athlon64 on-CPU GART support

< > Intel 440LX/BX/GX, I8xx and E7x05 chipset support

< > NVIDIA nForce/nForce2 chipset support

< > SiS chipset support

< > Serverworks LE/HE chipset support

< > VIA chipset support

< > Transmeta Efficeon support

<*> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) #用来之辞DRI的,选上

< > 3dfx Banshee/Voodoo3+ #下面这些你的显卡是什么芯片的就选那个

< > ATI Rage 128

< > ATI Radeon

< > Intel I810

< > Intel 830M, 845G, 852GM, 855GM, 865G

< > Matrox g200/g400

< > SiS video cards

< > Via unichrome video cards (NEW)

< > ACP Modem (Mwave) support #如果你用的是IBM的ThinkPad笔记本,并且ACP Modem就选上

< > RAW driver (/dev/raw/rawN) (OBSOLETE) #过时的东西不选

[ ] HPET - High Precision Event Timer #查看一下你的/dev目录是否有hpet,没有的话就不选

< > Hangcheck timer #不确定这是个什么东西,应该可以不选

TPM devices --->

< > TPM Hardware Support #你有这个东西就选

I2C support --->

< > I2C support #如果你不想使用Motherboard Sensor,可以不选。

Dallas's 1-wire bus --->

< > Dallas's 1-wire support #没听过这东西,你有的话就选

Hardware Monitoring support --->

<*> Hardware Monitoring support (NEW) #用来监控硬件信息的,诸如CPU温度,风扇转速等等,选上

[ ] Hardware Monitoring Chip debugging messages (NEW) #绝对不选

Misc devices --->

< > Device driver for IBM RSA service processor #不确定可以不选

Multimedia devices --->

< > Video For Linux #提供音频/视频捕捉用的,一般可能要不到

Digital Video Broadcasting Devices --->

[ ] DVB For Linux #对高清晰度数字电视的支持,需要数字电视卡。目前北京深圳很多数字电视机顶盒内嵌Linux,就使用了DVB For Linux。

Graphics support --->

<*> Support for frame buffer devices #这个应该是可选的

[ ] Enable Video Mode Handling Helpers #只有radeonfb,rivafb,i810fb驱动依赖这个,看你的显卡芯片啦

[ ] Enable Tile Blitting Support #你用的是matroxfb驱动就选上

< > Cirrus Logic support #如果你有这种显卡才选上

< > Permedia2 support #你有这种显卡就选上

< > CyberPro 2000/2010/5000 support #不知道什么东西,对照一下你的显卡,有这含信息就选上

< > Arc Monochrome LCD board support (NEW) #这个我也弄不清到底是用来支持哪类LCD的,一般可以不



[ ] Chips 69000 display support #鸡肋,现在还没用

[ ] IMS Twin Turbo display support #苹果机可以用这个

< > VGA 16-color graphics support #16色显卡需要选这个

[*] VESA VGA graphics support #这个当然选上,修改grub.conf就用到了这个

< > Hercules mono graphics support #下面这些你是什么芯片的显卡就选什么

< > nVidia Framebuffer Support

< > nVidia Riva support #这个请不要选,如果你打算安装nvidia的显卡驱动

< > Intel 810/815 support (EXPERIMENTAL)

< > Intel 830M/845G/852GM/855GM/865G support (EXPERIMENTAL)

< > Matrox acceleration

< > ATI Radeon display support (Old driver)

< > ATI Radeon display support

< > ATI Rage128 display support

< > ATI Mach64 display support

< > S3 Savage support

< > SiS acceleration

< > NeoMagic display support

< > IMG Kyro support

< > 3Dfx Banshee/Voodoo3 display support

< > 3Dfx Voodoo Graphics (sst1) support

< > Trident support

[ ] AMD Geode family framebuffer support (EXPERIMENTAL) #如果你用的是AMD Geode系列处理器,可以选上

< > Epson S1D13XXX framebuffer support #这不是做打印机的Epson吗,它也弄了个显卡?你自己看着办

< > Virtual Frame Buffer support (ONLY FOR TESTING!) #千万别选

Console display driver support --->

--- VGA text console

[*] Video mode selection support #用来修改显示模式的,一般我们在grub中会用到类似vga=788的语句,所以应该选


< > MDA text console (dual-headed) (EXPERIMENTAL) #不确定就不选

< > Framebuffer Console support #目前还不起作用,可以不选

[ ] Select compiled-in fonts #不确定可以不选

Logo configuration --->

[ ] Bootup logo #目前还不起作用,不选

[ ] Backlight & LCD device support ---> #用来支持背光(PDA需要这个)和LCD显示器的,你有的话可以选

Sound --->

<*> Sound card support #有声卡的话就选

Advanced Linux Sound Architecture --->

<*> Advanced Linux Sound Architecture #想使用ALSA的话就打开

< > Sequencer support #以下几个都可以不要选,应该kernel内置的alsa并不是最新的,还是装完系统后直接emerge alsa-drivers alsa-tools吧!

< > Sequencer dummy client #

< > OSS Mixer API #

< > OSS PCM (digital audio) API #

[ ] OSS Sequencer API #

[ ] Verbose printk #

[ ] Debug #

Generic devices ---> #这几个根据你的声卡型号选择吧

ISA devices --->

PCI devices --->

USB devices --->

Open Sound System --->

<*> Open Sound System (DEPRECATED) #打算使用OSS的就选上

< > BT878 audio dma #下面的你是什么芯片的声卡就选哪个

< > C-Media PCI (CMI8338/8738)

< > Creative SBLive! (EMU10K1)

< > Crystal SoundFusion (CS4280/461x)

< > Crystal Sound CS4281

< > Ensoniq AudioPCI (ES1370)

< > Creative Ensoniq AudioPCI 97 (ES1371)
USB support ---> #这一部分实在是不想一一介绍了,太多了,而且很多我们都用不到,我只列出几个必选的,其他的你自己看的去

<*> Support for Host-side USB #要用USB就得选上这个

--- Miscellaneous USB options

[*] USB device filesystem #都应该选上这个的

.......

--- USB Host Controller Drivers

<*> EHCI HCD (USB 2.0) support #如果需要支持USB 2.0的话就要选上

[*] Root Hub Transaction Translators (EXPERIMENTAL) #把这个选上也比较好

<*> UHCI HCD (most Intel and VIA) support #如果你是intel或via主板就选上

--- USB Device Class drivers #这里面有什么USB设备就选上呢么

< > USB Audio support

< > USB Bluetooth TTY support

< > USB MIDI support

< > USB Modem (CDC ACM) support

< > USB Printer support

......

--- USB Input Devices

<*> USB Human Interface Device (full HID) support #你的鼠标是USB的就可以选

[*] HID input layer support #键盘,鼠标或者joysticks是USB的就选上

......

MMC/SD Card support --->

< > MMC support #你有的话就选

InfiniBand support --->

< > InfiniBand support #同上

SN Devices --->

File systems#你使用什么文件系统格式就选哪个,不过最好把常用的ext2,ext3和reiserfs都选了。除了debug不选,其他的都选上

<*> Second extended fs support

[*] Ext2 extended attributes

[*] Ext2 POSIX Access Control Lists

[*] Ext2 Security Labels

[ ] Ext2 execute in place support (NEW) #这个不确定的话可以不选

<*> Ext3 journalling file system support

[*] Ext3 extended attributes

[*] Ext3 POSIX Access Control Lists

[*] Ext3 Security Labels

[ ] JBD (ext3) debugging support

<*> Reiserfs support

[ ] Enable reiserfs debug mode

[*] Stats in /proc/fs/reiserfs

[*] ReiserFS extended attributes

[*] ReiserFS POSIX Access Control Lists

[*] ReiserFS Security Labels

< > JFS filesystem support

XFS support --->

< > XFS filesystem support

< > Minix fs support

< > ROM file system support

[*] Inotify file change notification support #不确定的话就选上这个

[ ] Quota support #启用这个,可以设置每个用户最多可使用的文件空间,可以不用选

< > Old quota format support #上面这个没用的话,这个也可以不选

< > Quota format v2 support #同上

< > Kernel automounter support #用来加载远程文件系统的,一般用不着,不选

< > Kernel automounter version 4 support (also supports v3) #同上

CD-ROM/DVD Filesystems --->

<*> ISO 9660 CDROM file system support #要读取光碟内容当然得选这个

[*] Microsoft Joliet CDROM extensions #这个是微软扩展的CDROM文件格式,能支持长文件名,所以也选上吧

[*] Transparent decompression extension #这个是linux下扩张的能自动压缩存入CDROM中的数据并自动解压当你访问CD时,不错的功能,选


<*> UDF file system support #一种新的CD-ROMS和DVDs的文件格式,也选上吧

DOS/FAT/NT Filesystems --->

<*> MSDOS fs support #支持微软的MSDOS分区,选上吧,如果你是双系统

<*> VFAT (Windows-95) fs support #选上,这样可以在linux下加载windows的FAT分区

(936) Default codepage for FAT #这里设定为936(简体中文),以后加载FAT分区就不要再加这个参数了

(gb2312) Default iocharset for FAT #因为FAT对于UTF-8支持不是很好,这个你可以换成gb2312.默认为
iso8859-1

< > NTFS file system support #如果你打算加载NTFS分区就得选上,不过有一定风险的。

Pseudo filesystems --->

[*] /proc file system support #这个当然选上啦

[ ] /proc/kcore support #目前不起作用,不选

[ ] /dev/pts Extended Attributes #不确定的话可以不选

[*] Virtual memory file system support (former shm fs) #这个也是最好选上的

[ ] tmpfs Extended Attributes #不确定的话不选

[ ] HugeTLB file system support #目前不起作用,不选

Miscellaneous filesystems ---> #这些格式你需要哪个就选哪个,反正我一个也不需要

< > ADFS file system support (EXPERIMENTAL)

< > Amiga FFS file system support (EXPERIMENTAL)

< > Apple Macintosh file system support (EXPERIMENTAL)

< > Apple Extended HFS file system support

< > BeOS file system (BeFS) support (read only) (EXPERIMENTAL)

< > BFS file system support (EXPERIMENTAL)

< > EFS file system support (read only) (EXPERIMENTAL)

< > Compressed ROM file system support (cramfs)

< > FreeVxFS file system support (VERITAS VxFS(TM) compatible)

< > OS/2 HPFS file system support

< > QNX4 file system support (read only)

< > System V/Xenix/V7/Coherent file system support

< > UFS file system support (read only)

Network File Systems ---> #以下这几种网络文件系统格式,请根据自己的需要选择

< > NFS file system support

< > NFS server support

< > SMB file system support (to mount Windows shares etc.)

< > CIFS support (advanced network filesystem for Samba, Window and o

< > NCP file system support (to mount NetWare volumes)

< > Coda file system support (advanced network fs)

< > Andrew File System support (AFS) (Experimental)

Partition Types --->

[ ] Advanced partition selection #通常不用选这个

Native Language Support ---> #这里是设置本地语言支持的。其他的不要设置了,直接再选种你的本地语言就可以了

<*> Simplified Chinese charset (CP936, GB2312) #简体中文请选这个

< > Traditional Chinese charset (Big5) #繁体中文请选这个

< > NLS UTF8 #这个也选上吧

Profiling support

[ ] Profiling support (EXPERIMENTAL) #直译就是剖析,其实就是提供一种检测代码运行效率的工具,如果你不编程的话,这个东西也没有用

<*> OProfile system profiling (EXPERIMENTAL) #也不知道什么东西,不过还是选上好了,不然第一个白选了

Kernel hacking

[*] Show timing information on printks #用来分析内核启动过慢的用的,选上

[ ] Kernel debugging #不要选,这个会增大很多编译时的tmp空间

Security options

[ ] Enable access key retention support #如果你不确定的话就不要选

[ ] Enable different security models #同上

Cryptographic options

[ ] Cryptographic API #用来加密储存文件用的,对普通用户用处不大,如果你有特别重要的资料,那你应该选上.此外如果你使用了无线网卡上网,也最好选上这个,具体信息请查看这 篇文章http://gentoo-wiki.com/HARDWARE_ipw2200

[ ] HMAC support

< > Null algorithms

< > MD4 digest algorithm

< > MD5 digest algorithm

< > SHA1 digest algorithm

< > SHA256 digest algorithm

< > SHA384 and SHA512 digest algorithms

< > Whirlpool digest algorithms

< > Tiger digest algorithms

< > DES and Triple DES EDE cipher algorithms

< > Blowfish cipher algorithm

< > Twofish cipher algorithm

< > Serpent cipher algorithm

< > AES cipher algorithms (i586)

< > CAST5 (CAST-128) cipher algorithm

< > CAST6 (CAST-256) cipher algorithm

< > TEA and XTEA cipher algorithms

< > ARC4 cipher algorithm

< > Khazad cipher algorithm

< > Anubis cipher algorithm

< > Deflate compression algorithm

< > Michael MIC keyed digest algorithm

< > CRC32c CRC algorithm

< > Testing module

Hardware crypto devices --->

< > Support for VIA PadLock ACE

Library routines #用不着你选了,你也没的选

--- CRC-CCITT functions

--- CRC32 functions

--- CRC32c (Castagnoli, et al) Cyclic Redundancy-Check

**************************************************************


 

你可能感兴趣的:(FC5-(linux)内核编译,新手艰辛的历程)