编译 linux 内核(2.6版本)
1. 得到linux源文件
从 ftp://ftp.kernel.org/pub/linux/kernel/v2.6 中下载
linux-2.6.x.tar.gz 到 /usr/src
2. su 到 root 用户
3. 接下来的命令序列为编译内核
# cd /usr/src
# tar xzvf linux-2.6.x.tar.gz 解压到 linux-2.6.x 目录
# mv linux-2.6.x linux-2.6.x-1 修改目录名称
# ln -s linux-2.6.x-1 linux 创建链接
# cd linux
# vi Makefile 修改内核扩展版本号
修改 EXTRAVERSION 为 -1 (或其他的字符也可以, 和目录名对应)
# make mrproper 清除垃圾
# make menuconfig 选择内核选项
这一步最麻烦, 有很多东西要选, 用 IBM 本本的
同学可以在 http://www.w-m-p.com/kconfig-2.6.2-rc2-mm1.txt
处找到一个配置文件, 找到的话(也许找不到:)), 先给拷贝到
/usr/src/linux/ 下并改名为 .config, 然后再运行本命令细调
# make bzImage 编译内核
# make modules 编译模块
# make modules_install 安装模块
(注意: debian 的 ibm 用户最好要安装 module-init-tools)
# depmod -a
(好像不用也可以)
4. 修改启动(lilo 的, grub 的更简单, 看看配置文件就知道了)
# cp /usr/src/linux/System.map /boot/System.map-2.6.x-1
# cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.6.x-1
使用具体的版本号区分不同的内核, 这样可以在开始时选择不同的内核启动.
# vi /etc/lilo (增加以下内容, 将来会显示在lilo开机启动列表中)
image=/boot/vmlinuz-2.6.x-1
label=Linux-2.6.x-1
read-only
optional
# lilo -v
(注意: 这一步很重要!!)
5. # reboot
然后可以选新的内核启动, 假如不喜欢也可以选以前的内核.