- 论坛徽章:
- 0
|
疑问以加黑
升级内核过程:
制作紧急启动盘:mkbootdisk -device /dev/fd 2.2.12_20
删除:rm -rf 链接及文件:/usr/src/linux /usr/src/linux-2.2.12_20/
或者rpm -e --nodeps kernel-headers kernel然后再手工删除/usr/src/linux-2.2.12 /lib/modules/2.2.12
解包并优化:tar -xzpf linux-version.tar.gz
chown -R 0.0 /usr/src/linux/
vi /usr/src/linux/include/linux/tasks.h /usr/src/linux/Makefile
对内核施加补丁:解包并放到/usr/src目录下,patch -p0 < linux-2.2.14-owl.diff后将过程文件删除(tar.gz/-owl目录/.diff文件)
修改链接:(编译用)
cd /usr/include/ rm -rf asm linux scsi
ln -s /usr/src/linux/include/asm-i386 asm
ln -s /usr/src/linux/include/linux linux
ln -s /usr/src/linux/include/scsi scsi
旧.o文件及依赖关系
cd /usr/src/linux make mrproper
配置内核:cd /usr/src/linux make config /make menuconfig /make xconfig
编译内核:make dep; make clean; make bzImage
如果支持module还要 make module; make module_install
安装内核:
cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-kernel.version.number
cp /usr/src/linux/System.map /boot/System.map-kernel.version.number
修改/boot下的链接文件
ln -fs vmlinuz-kernel.version.number vmlinuz
ln -fs System.map-kernel.version.number System.map
rm -f module-info 旧内核的链接文件
rm -f initrd-2.2.12-20.img
移动及文件整理
mkdir -p /usr/src/linux-2.2.14/include
cp -r /usr/src/linux/include/asm-generic asm-i386 linux net video scsi /usr/src/linux-2.2.14/include
rm -rf /usr/src/linux(原来的sam,scsi 链接还能用吗,还会用到吗?)
cd /usr/src
ln -s /usr/src/linux-2.2.14 linux
编辑lilo.conf vi/etc/lilo.conf中image=/boot/vmlinux-2.2.14
并删除initrd=/boot/initrd-2.2.12-20.img(非模块内核不需要initrd)
更新lilo: /sbin/lilo -v
模块相关:rm-f /etc/conf.modules rpm -e --nodeps modutils
vi /etc/rc.sysinit 注释掉 depmod -a
reboot
uname -a 查看内核版本
mkbootdisk --device /dev/fd0 2.2.14
紧急启动盘:fdformat /dev/fd0H1440
cp vmlinuz /dev/fd0
rdev
rdev /dev/fd0 /dev/hda8
rdev -R /dev/fd0 1 reboot从软驱引导系统
如果内核升级或添加了新设备,要确保更新了/dev目录 cd/dev ./MAKEDEV update
研读经典果然感觉功力大增  |
|