您的位置:首页 > 运维架构 > Linux

CentOS 升级内核

2013-05-27 22:47 429 查看
作者:jzbgjsy

转自:http://blog.csdn.net/jzbgjsy/article/details/5353026

一、下载

http://www.kernel.org/

放到 /usr/src/linux-2.6.33.tar.bz2

二、编译安装

# tar jxvf linux-2.6.33.tar.bz2

# ln -s linux-2.6.33 linux

linux# make mrproper

该命令保证源代码目录下没有不正确的.o文件(即object文件,编译c语言时生成的,目的是下一步编译成可执行码时link之用)以及文件的相互倚赖关系.第一次编译刚下载的源码包不用此命令, 但如果多次使用这些源码编译内核,那么一定要先运行本命令.

linux# make menuconfig

linux# make clean

linux# make bzImage

bzimage是压缩的方式进行编译

linux# make modules

编译模块

linux# make modules _install

安装新模块

linux# make install

安装内核文件到到/boot目录

也可以手动安装内核文件:

cd /boot

cp /usr/src/linux/System.map System.map-2.6.33

cp /usr/src/linux/arch/i386/boot/bzImage vmlinuz-2.6.33

vi /etc/grub.conf

加入

title CentOS (2.6.33)

root (hd0,0)

kernel /vmlinuz-2.6.33 ro root=/dev/VolGroup00/LogVol00

initrd /initrd-2.6.33.img

# reboot

三、内核配置

/1. Code maturity level options

代码成熟等级。此处只有一项:

prompt for development and/or incomplete code/drivers

如果你要试验现在仍处于实验阶段的功能,比如khttpd、IPv6等,就必须

把该项选择为Y了;否则可以把它选择为N。

/2. Loadable module support

对模块的支持。这里面有三项:

Enable loadable module support:

除非你准备把所有需要的内容都编译到内核里面,否则该项应该是必选的。

Set version information on all module symbols:

可以不选它。

Kernel module loader:

让内核在启动时有自己装入必需模块的能力,建议选上。

/3. Processor type and features

CPU类型,选项很多,不一一介绍了,有关的几个如下:

Processor family:

根据你自己的情况选择CPU类型。

High Memory Support:

大容量内存的支持。可以支持到4G、64G,一般可以不选。

Math emulation:

协处理器仿真,协处理器是在386时代的宠儿,现在早已不用了。

MTTR support:MTTR支持。可不选。

Symmetric multi-processing support:

对称多处理支持。除非你富到有多个CPU,否则就不用选了。

/4. General setup

这里是对最普通的一些属性进行设置。这部分内容非常多,一般使用缺省设置就可以了。下面介绍一下经常使用的一些选项:

Networking support:

网络支持,必须选,没有网卡也建议选上。

PCI support:

PCI支持,必选.

PCI access mode:

PCI存取模式。可供选择的有BIOS、Direct和Any,选Any吧。

Support for hot-pluggabel devices:

热插拔设备支持,可选.

PCMCIA/CardBus support:

PCMCIA/CardBus支持,有PCMCIA就必选了。

System V IPC

BSD Process Accounting

Sysctl support:

以上三项是有关进程处理/IPC调用的,主要就是System V和BSD两种风格。

如果你不是使用BSD,就按照缺省吧。

Power Management support:电源管理支持,可选上,特别是笔记本.

Advanced Power Management BIOS support:高级电源管理BIOD支持。

/5. Memory Technology Device(MTD)

MTD设备支持

可不选。

/6. Parallel port support

串口支持。如果不打算使用串口,就别选了。

/7. Plug and Play configuration

即插即用支持。选上吧,可以体验一下Linux下即插即用的感觉。

/8. Block devices

块设备支持,需要针对每个人的具体情况来选:

Normal PC floppy disk support:普通PC软盘支持,一般要选,我的没有,

就没选

XT hard disk support:

Compaq SMART2 support:

Mulex DAC960/DAC1100 PCI RAID Controller support:RAID镜像用的。

Loopback device support:

Network block device support:网络块设备支持。如果想访问网上邻居的

东西,就选上。

Logical volume manager(LVM)support:逻辑卷管理支持。

Multiple devices driver support:多设备驱动支持。

RAM disk support:RAM盘支持。

/9. Networking options

网络选项。这里配置的是网络协议。自己看吧.

除了肯定要选中TCP/IP networking外,其它看着办吧

/10. Telephony Support

Linux下可以支持电话卡,这样你就可以在IP上使用普通的电话提供语音服务.详细情况可看看help内容.

/11. ATA/IDE/MFM/RLL support

这个是有关各种接口的硬盘/光驱/磁带/软盘支持的,内容太多了,使用缺省

的选项吧,偶有PCMCIA卡,各人机器情况不一样.

/12. SCSI support

SCSI设备的支持, 如果你用了SCSI的硬盘/光驱/磁带等设备,自己找好了.

/13. IEEE 1394(FireWire)support

偶的是灰的,不用操心了,)

/14. I2O device support

在智能Input/Output(I2O)体系接口中使用,不会,用缺省吧.

/15. Network device support

网络设备支持。上面选好协议了,现在该选设备.

为了免得麻烦,编译到内核里面好了,不选M了,选Y。耐心点,一般说来你都能找到自己用的网卡。如果没有,你只好自己到厂商那里去当驱动了,

或者去www.mydrivers.com看看

/16. Amateur Radio support

没有,不选.

/17. IrDA(infrared)support

这个要红外支持,我的有.

/18. ISDN subsystem

如果你使用ISDN上网,这个就必不可少了

/19. Old CD-ROM drivers(not SCSI、not IDE)

专门为非SCSI/IDE口的光驱做的,但谁还在用那么老的东东啊,自己选吧.

/20.Input Core Support

这个选项很重要,除了joystick(游戏遥控杆)建议都选"m".切记!

/21. Character devices

字符设备。这个内容又太多了,先使用缺省设置,需要的话自己就修改:

I2C support:I2C是Philips极力推动的微控制应用中使用的低速串行

总线协议。如果你要选择下面的Video For Linux,该项必选。

Mice:鼠标。如果是笔记本,建议在Bus Mouse Support选上"y".

Joysticks:手柄。即使在Linux下把手柄驱动起来意义不大

Watchdog Cards:虽然称为Cards,这个可以用纯软来实现,当然也有

硬件的。如果你把这个选中,那么就会在你的/dev下创建一个名为

watchdog的文件,它可以记录你的系统的运行情况,一直到系统重新

启动的1分钟左右。有了这个文件,你就可以恢复系统到重启前的状态了。

Video For Linux:支持有关的音频/视频卡。

Ftape, the floppy tape device driver:

PCMCIA character device support:

/22.Multimedia devices

为捕捉audio/video用,如果感兴趣看看help

/23. File systems

文件系统。内容太多了,建议在缺省选项的基础上进行修改。

介绍以下几项:

Quota support:Quota可以限制每个用户可以使用的硬盘空间的上限,在多用户共同使用一台主机的情况中十分有效。

DOS FAT fs support:

DOS FAT文件格式的支持,可以支持FAT16、FAT32。

ISO 9660 CD-ROM file system support:光盘使用的就是ISO 9660的文件格式。

NTFS file system support:ntfs是NT使用的文件格式,你要在linux下mount ntfs分区的话,就要选上它。记得在mount的时候,

只有iocharset=cp936可以加上,codepage=936不能加。

/proc file system support:/proc文件系统是Linux提供给用户和系统进行交

互的通道,建议选上,否则有些功能没法正确执行。

还有另外三个大类都规到这儿了:Network File Systems(网络文件系统)、

Partition Types(分区类型)、Native Language Support(本地语言支持)。

值得一提的是Network File Systems里面的两种:NFS和SMB分别是Linux和

Windows相互以网络邻居的形式访问对方所使用的文件系统,根据需要加以选择。

/24 Console drivers

用缺省

/25 Sound

你用什么声卡?选选吧.

/26 USB Support

很重要,至少要选以下选项

Support for USB

UCHI Alternate Deriver (JE) Support

OCHI (Compaq,iMacs...

USB Audio...

USB MIDI...

USB Human Interface Device (full HID) support

HID input layer support

/dev/hiddev raw HID...

USB LCD device support

因为偶的硬件很多都要求USB HID 支持,所以这里选了不少

*如果有某些选项那不准,可以参考:

/usr/src/linux-2.4/Documentation/Configure.help

也可以search整个系统并看看相关的文字都在哪些文件出现:

#find /usr -name "*.*" -print -exec grep

-q -s mousedev {} /; -print

这个长命令很有用

四、编辑内核目录下 .config文件

下面在qconf中配置.config文件。选"Y"(打勾)就是把它编译到内核中,选"M"(打点)把它编译成模块,供内核动态调用。选"N"就是不安装。也可以保持默认选项......

下面只是简单提几项:

General setup

Optimize for size (Look out for broken compilers!) 发烧友可以选Y以获得更小的内核。

Processor type and features

Symmetric multi-processing support 如果你没有多线程处理器这个可以选N

Processor family 根据你的CPU来选择。

High Memory Support 1G以上内存的选"4GB", 1G以下的,将来也不打算升级到1G的,选"off".

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

PCI support

PCI Express support 老式机器没有PCI-E设备的可以选N

ISA support 较新的新机器没有ISA设备,可以选N

MCA support 一般选N

NatSemi SCx200 support 一般选N

PCI Hotplug Support

Support for PCI Hotplug (EXPERIMENTAL) 如果没有PCI热插拔设备,选N

Device Drivers

Block devices

Packet writing on CD/DVD media

Enable write caching (EXPERIMENTAL) 如果你有刻录机,想启用写缓存功能,选Y

ATA/ATAPI/MFM/RLL support

Include IDE/ATA-2 DISK support 如果你的/boot是放在IDE硬盘上,那么这里一定要选Y,选M都不行。否则启动时会出现"waiting for root file system"的提示而停滞不前。

SCSI device support 如果有SATA硬盘,就选Y

SCSI disk support 如果你的/boot放在SATA硬盘上,一定要选Y。

Character devices

I2C support 一般可以选Y或者M

Graphics support 不建议把显卡驱动编译进内核。,选M,编译成模块方便日后升级驱动。

Support for frame buffer devices

VESA VGA graphics support 可以选Y

Logo configuration

Bootup logo 如果想看到Linux启动logo,选Y

Sound

Sound card support 选Y, 除非你没有声卡

其他的驱动,酌情添加删除,根据机器配置删除不需要的驱动可以缩短编译时间。你可以在命令行下输如lspci或者dmesg查看硬件信息。

File systems

CD-ROM/DVD Filesystems

ISO 9660 CDROM file system support 一般选Y

DOS/FAT/NT Filesystems

VFAT (Windows-95) fs support 有FAT32分区就选Y吧

NTFS file system support 有NTFS分区就选Y吧

NTFS write support 如果想对 NTFS分区进行写操作,选Y

Native Language Support

Simplified Chinese charset (CP936, GB2312) 选Y或者M使读取FAT分区不会遇到中文乱码现象
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: