分类: LINUX
2006-07-30 21:49:33
(1)安装module-init-tools-3.0.tar.gz: # tar -zxvf module-init-tools-3.0.tar.gz # cd module-init-tools-3.0 # ./configure --prefix=/sbin # make # make install # ./generate-modprobe.conf /etc/modprobe.conf 不知道为什么,我用module-init-tools-3.1时make出错。如果改用3.0的就没事了。 (2)安装modutils-
模??阋桓霾慰迹?p> 代码成熟度选项:Code maturity level options --->[*] Prompt for development and/or incomplete code/drivers[*] Select only drivers expected to compile cleanly 打开使用开发中、不完全的代码/驱动会让内核配置多出很多选项,由于我们需要使用一些正在开发中的功能,因此必需打开这一选项。通用设置选项,General setup --->() Local version - append to kernel release这里填入的是64字符以内的字符串,你在这里填上的字符口串可以用uname -a命令看到。[*] Support for paging of anonymous memory (swap)这是使用交换分区或者交换文件来做为虚拟内存的,当然要选上了。[*] System V IPC表示系统5的Inter Process Communication,它用于处理器在程序之间同步和交换信息,如果不选这项,很多程序运行不起来[*] POSIX Message Queues这是POSIX的消息队列,它同样是一种IPC。建议你最好将它选上[*] BSD Process Accounting这是充许用户进程访问内核将账户信息写入文件中的。这通常被认为是个好主意,建议你最好将它选上。[*] BSD Process Accounting version 3 file format[*] Sysctl support这个选项能不重新编译内核修改内核的某些参数和变量,如果你也选择了支持/proc,将能从/proc/sys存取可以影响内核的参数或变量。建议你最好将它选上[ ] Auditing support审记支持,用于和内核的某些子模块同时工作,例如SELinux。只有选择此项及它的子项,才能调用有关审记的系统调用(15) Kernel log buffer size (16 => 64KB, 17 => 128KB)内核日志缓存的大小,12 => 4 KB,13 => 8 KB,14 => 16 KB单处理器,15 => 32 KB多处理器,16 => 64 KB for x86 NUMAQ or IA-64,17 => 128 KB for S/390[*] Support for hot-pluggable devices是否支持热插拔的选项,肯定要选上[*] Kernel Userspace Events内核中分为系统区和用户区,这里系统区和用户区进行通讯的一种方式,选上。[*] Kernel .config support将.config配置信息保存在内核中,选上它及它的子项使得其它用户能从/proc中得到内核的配置[*] Enable access to .config through /proc/config.gz[ ] Configure standard kernel features (for small systems) --->这是为了编译某些特殊的内核使用的,通常你可以不选择这一选项,你也不用对它下面的子项操心了。--- Configure standard kernel features
(for small systems)[ ] Load all symbols for debugging/kksymoops是否装载所有的调试符号表信息,如果你不需要对内核调试,不需要选择此项。[*] Enable futex support不选这个内核不一定能正确的运行使用glibc的程序,当然要选上[*] Enable eventpoll support不选这个内核将不支持事件轮循的系统调用,最好选上[*] Optimize for size这个选项使gcc使用-Os的参数而不是-O2的参数来优化编译,以获得更小尺寸的内核,建议选上。[*] Use full shmem filesystem除非你在很少的内存且不使用交换内存时,才不要选择这项(0) Function alignment(0) Label alignment(0) Loop alignment(0) Jump alignment可加载模块: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处理器类型及特性:Processor type and features --->Subarchitecture Type (PC-compatible) --->Processor family (Pentium-4/Celeron(P4-based)/Pentium
lls determine boot disk (EXPERIMENTAL)High Memory Support (4GB) --->[ ] Allocate 3rd-level pagetables from highmem[ ] Math emulation[*] MTRR (Memory Type Range Register) support[ ] Boot from EFI support (EXPERIMENTAL)[*] Enable kernel irq balancing[ ] Use register arguments (EXPERIMENTAL) 电源管理:Power management options (ACPI, APM) --->[*] Power Management support[ ] Power Management Debug Support[ ] Software Suspend (EXPERIMENTAL)ACPI (Advanced Configuration and Power Interface) Support --->APM (Advanced Power Management) BIOS Support --->CPU Frequency scaling --->ACPI (Advanced Configuration and Power Interface) Support --->[*] ACPI Support这是一种电源管理方式,你可以看看你的BIOS是否支持。如果支持的话建议你选上这项[ ] Sleep States (EXPERIMENTAL)< > AC Adapter< > Battery<*> Button 捕获Power、Sleep、Lid(我也不知道这是什么按钮)等按钮是否按下,并做相应的动作<*> Video 集成在板上的显卡的ACPI支持,对有些板卡可能不起作用< > Fan<*> Processor<*> Thermal Zone< > ASUS/Medion Laptop Extras< > IBM ThinkPad Laptop Extras< > Toshiba Laptop Extras(0) Disable ACPI for systems before Jan 1st this year[ ] Debug Statements[*] Power Management Timer SupportAPM (Advanced Power Management) BIOS Support --->< > APM (Advanced Power Management) BIOS support高级电源管理的支持,一般来说笔记本应该选上,台式机可以不选。[ ] Ignore USER SUSPEND[*] Enable PM at boot time[ ] Make CPU Idle calls when idle[ ] Enable console blanking using APM[ ] RTC stores time in GMT 按Unix的标准,硬件的时钟应该设为格林威治时间[ ] Allow interrupts during APM BIOS calls[*] Use real mode APM BIOS call to power off[*] CPU Frequency scaling这一选项允许改变CPU的主频,使CPU在低负荷或使用电池时降低主频,达到省电的目的。[ ] Enable CPUfreq debugging< > /proc/cpufreq interface (deprecated)Default CPUFreq governor (performance) --->--- 'performance' governor<*> 'powersave' governor<*> 'userspace' governor for us
erspace frequency scaling[ ] /proc/sys/cpu/ interface (2.4. / OLD)<*> 'ondemand' cpufreq policy governor自动调节主频<*> CPU frequency table helpers 多数的CPU需要这一项来调节主频<*> ACPI Processor P-States driver 报告处理器的状态< > AMD Mobile K6-2/K6-3 PowerNow!< > AMD Mobile Athlon/Duron PowerNow!< > AMD Opteron/Athlon64 PowerNow!< > Cyrix MediaGX/NatSemi Geode Suspend Modulation<*> Intel Enhanced SpeedStep Intel的变频技术支持[ ] Use ACPI tables to decode valid frequency/voltage pairs--- Built-in tables for Banias CPUs< > Intel Speedstep on ICH-M chipsets (ioport interface)< > Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface)< > Intel Pentium 4 clock modulation< > nVidia nForce2 FSB changing< > Transmeta LongRun< > VIA Cyrix III Longhaul--- shared options[ ] /proc/acpi/processor/../performance interface (deprecated)[ ] Relaxed speedstep capability checks总线类型:[*] PCI supportPCI access mode (Any) --->强列建议选Any,系统将优先使用MMConfig,然后使用BIOS,最后使用Direct检测PCI设备。[ ] Message Signaled Interrupts (MSI and MSI-X)[ ] Legacy /proc/pci interface[ ] PCI device name database[ ] ISA support[*] EISA support[*] Vesa Local Bus priming[*] Generic PCI/EISA bridge[*] EISA virtual root device[ ] EISA device name database[ ] MCA support< > NatSemi SCx200 supportPCCARD (PCMCIA/CardBus) support --->PCI Hotplug Support --->PCCARD (PCMCIA/CardBus) support --->一般只有笔记本电脑上才会有PCMCIA插槽,如果你是台式机的话,可以不选这一项,然后跳过这一部份。PCI Hotplug Support --->< > Support for PCI Hotplug (EXPERIMENTAL) 一般来讲只有服务器上会有热插拔的设备,如果你使用的是台式机,你可以不选择此项并跳过这一部份。可执行文件格式,[*] Kernel support for ELF binariesELF是开放平台下最常用的二进制文件,它支持不同的硬件平台< > Kernel support for a.out and ECOFF binaries<*> Kernel support for MISC binaries 此选项允许插入二进制的封装层到内核中,当使用Java、.NET、Pyt
hon、Lisp等语言编写的程序时非常有用 硬件设备相当复杂,看得偶头晕,大家针对自己的设备慎重选择(手边最好准备一本汉英字典:)如果想使用adsl,记得网络部分除了TCP/IP协议还得把ppp部分编译进内核,想当初偶就是把这个给忘了,郁闷了许久。文件系统,<*> Second extended fs support[*] Ext2 extended attributes[*] Ext2 POSIX Access Control Lists[*] Ext2 Security Labels<*> 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 LabelsJFS filesystem support[*] JFS POSIX Access Control Lists[ ] JFS debugging[ ] JFS statisticsXFS filesystem support[*] Realtime support (EXPERIMENTAL)[*] Quota support[*] Security Label support[*] POSIX ACL support< > Minix fs support< > ROM file system support[*] Quota support< > Old quota format supportQuota format v2 support[*] Dnotify support< > Kernel automounter support< > Kernel automounter version 4 support (also supports v3)CD-ROM/DVD Filesystems --->DOS/FAT/NT Filesystems --->Pseudo filesystems --->Miscellaneous filesystems --->Network File Systems --->Partition Types --->Native Language Support --->Profiling support --->Kernel hacking --->Security options --->Cryptographic options --->Library routines ---> 这个东东你要是搞不来就不要搞,默认的也可以的。先学习一下怎么样编译内核,等成功了,有了经验了在改也没有事的!编译内核:# cd /usr/src/linux# make dep -----链接程序代码与函数库.# make clean -----删除不必要的模块和文件.# make bzImage -----开始编译系统内核.# make modules -----开始编译外挂模块.# make modules_install -----安装编译完成的模块.要好常时间的,我洗了一件衣服,抽了N根白沙之后,总算完成了,好激动呀!# su -# /sbin/depmod -a -----创建模块?
牧唇? 更换内核:# cd /boot -----切换到引导分区/boot.# rm System.map vmlinuz -----删除旧的符号链接.# mv /usr/src/linux/System.map System.map# mv /usr/src/linux/arch/i386/boot/bzImage vmlinuz如果你用GRUB来管理开机,简单点就是你装了win还装了linux就要修改/boot/grub下的menu.1st文件:# vi /boot/grub/menu.1st键入i进入编辑模式:# 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,1)# kernel /boot/vmlinuz-version ro root=/dev/hda2# initrd /boot/initrd-version.img#boot=/dev/hdadefault=1timeout=10splashimage=(hd0,1)/boot/grub/splash.xpm.gztitle Fedora Core(2.6.11)root (hd0,1)kernel /boot/vmlinuz ro root=/dev/hda2 ---你的linux所在的分区title DOSrootnoverify (hd0,0)chainloader +1title Fedora Core(2.4.22)root (hd0,1)kernel /boot/vmlinuz-2.4.22-1.2115.nptl ro root=LABEL=/ hdd=ide-scsi rhgbinitrd /boot/initrd-2.4.22-1.2115.nptl.img这样还可以保留旧版本的内核以防编译新内核失败进不了系统 重启电脑,好了,进去了。网上说新内核速度好快的,我怎么感觉快不了多少呢。无所谓了,反正是成功了。呵呵,我可是失败了很多次才成功的。好高兴,2点了,穿衣服去吃东西了。rpm没法用了,怎么办?在/usr/lib/rpm/macros里面寻找代码:%__dbi_cdb create cdb mpool mp_mmapsize=16Mb mp_size=1Mb修改成代码:%__dbi_cdb create cdb mpool mp_mmapsize=16Mb mp_size=1Mb private 阅读关于 Linux内核 Linux配置 Linux安装 的全部文章