CentOS 5.5 內核版本: 2.6.18-194.e15-x86_64 .
先需要升級到 Linux 2.6.32, 由於 2.6.3x 的內核編譯步驟基本相似,所以本文標題寫的是 2.6.32x .
(1) 下載標准內核 2.6.32,並解壓至目錄下,如 /usr/src
(2) make menuconfig 選擇相關內核模塊
cd /usr/src/linux-2.6.32
cp /usr/src/kernels/2.6.18-194.el5-x86_64/.config . <將當前內核的 .config 復制過來>
make menuconfig
注意一定要選擇 General Setup-> enable deprecated sysfs features to support old...
(即生成的新 .config文件中的 CONFIG_SYSFS_DEPRECATED_V2=y ),若不如此選擇,編譯完內核重新啟動時會報錯“mount:could not find filesystem ‘/dev/root’。這是新版內核特有的選項,老內核沒有 CONFIG_SYSFS_DEPRECATED_V2 選項,老內核的.config也和新內核不一樣,但是使用新內核的 make menuconfig 產生的 .config 不僅包含了復制過來的 .config 文件中的相關選項,還包含一些新選項.
保存 .config
(3) 編譯內核
make;
make modules;
make modules_install;
make install;
(4) 修改/etc/grub.conf,選擇新內核,重啟系統。