说到编译内核,我来秀秀我的内核编译脚本
每次emerge了新内核源代码,执行这个脚本,只是需要在make oldconfig时回答几个问题就行了。如果是两个相邻版本,一般只要2-3分钟。这就是升级内核时需要花的全部时间。
当然每一台机器第一次编译的时候需要配置一下硬件驱动。花不了多长时间。内核还有make defconfg。可以参考我写的
http://zh.gentoo-wiki.com/HOWTO_Compile_Kernel
#!/bin/sh
KBUILD_OUTPUT=/var/tmp/kernel_build
sudo rm -rf ${KBUILD_OUTPUT}
mkdir ${KBUILD_OUTPUT}
cd ${KBUILD_OUTPUT}
if grep '/boot' /etc/fstab && ! grep '/boot' /etc/mtab; then
sudo mount /boot
fi
cp /boot/config .config
make -C /usr/src/linux O=${KBUILD_OUTPUT} oldconfig
echo -n "make menuconfig? [Y/n]:"
read yes
if [[ "x$yes" == xy || "x$yes" == x ]]
then
make O=${KBUILD_OUTPUT} menuconfig
fi
make && sudo sh -c "make install && make modules_install && umount /boot"
PS,当年我用redhat 7/8的时候我就自己编译内核了,因为不想用别人编译的ntfs模块。编译内核没什么。退一万步,gentoo还有genkernel。