怎样从源码重编内核?
解决方法:

声明: 以下信息由Red Hat提供,但是已经超出标准服务协议(SLA)的范围(http://www.redhat.com/support/service/sla/) 和支持流程.这篇文章提供的任何配置设定或者安装应用的信息将使得你的系统不再得到Red Hat支持服务。本文的目的是提供你实现系统需求所需要的信息,风险自负。

你需要安装kernel-source包来提供必需的文件。本文假设你已安装kernel-source包。

遵循以下步骤重编内核:

  1. cd /usr/src/linux-<kernel_version>
  2. make clean
  3. make mrproper
  4. make menuconfig 或 make xconfig (跟据你的喜好)
  5. make dep (2.6或以后不需要)
  6. make
  7. make modules

<kernel_version> 就是你要重编的内核版本号。当重编完成,内核会放在现在系统架构的目录下。把它复制到/boot目录,并为新内核在/etc/grub.conf中加一个新的记录。

例:

cp /usr/src/linux-2.6.5-1.358/arch/i386/boot/bzImage /boot/vmlinuz-2.6.5-1.358-custom

然后在/etc/grub.conf加一个类似的新记录:

title Custom Kernel (2.6.5-1.358)
        root (hd0,0)
        kernel /vmlinuz-2.6.5-1.358-custom ro root=LABEL=/
        initrd /initrd-2.6.5-1.358.img

那么重启后在GRUB就可以选择你的自定内核。