Chinaunix首页 | 论坛 | 博客
  • 博客访问: 201439
  • 博文数量: 103
  • 博客积分: 5051
  • 博客等级: 大校
  • 技术积分: 1155
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-08 11:07
文章分类

全部博文(103)

文章存档

2011年(1)

2010年(2)

2009年(100)

我的朋友

分类: LINUX

2009-04-29 22:03:30

升级到2.6.8.1
 
作者

slackware 10 默认安装的是 内核是 2.4.26 ,不过它的整个已经是 2.6 readly 。前几天为了安装 dropline gnome 2.8 需要升级到 2.6 版本的内核。下面就简单说一个自己升级安装经过。
1、下载
到 slackware 的镜像站点上 下载 current/testing 目录下的2.6内核包。下载地址是这个地址下载还是比较快的。

kernel-generic-2.6.8.1-i486-3.tgz
kernel-modules-2.6.8.1-i486-2.tgz
这两个包是安装新版本内核所必须的。
alsa-driver-1.0.6a_2.6.8.1-i486-1.tgz 是针对新内核的声音包,要在新内核下使用声音,安装 dropline gnome ,这个包也是必须的。
kernel-source-2.6.8.1-noarch-1.tgz
这个是新内核的源码包,如果要编译内核、模块等是需要的。一般来说要安装 nvidia 显卡驱动,这个包也必须装。

2、制作 initrd
正如大家在安装时已经看到的我们安装的内核是 kernel-generic是一个非常通用的内核,没有编译进很多新的特性。p.k.说这个内核只支持 IDE 驱动器和 ext2 系统。如果你的驱动器是 SCSI 的或者 你的 根文件系统是 ext3 、reiserfs 的,可以想象,你用这个内核是无法引导系统的。
那怎么办呢?这就要制作一个 initrd 。initrd 是英文 "initial ramdisk" 的缩写。它是一个非常小的文件系统,在内核启动时,系统根文件系统装进内核前被装载进内存并安装进内核的。这样就可以把一些需要的功能如 SCSI 驱动模块 ,reiserfs 文件系统模块安装进内核,这样内核就可以启动计算机真正的磁盘根文件系统。说了这么多废话,如果大家还想更详细的了解可以看它的说明:。
言归正传,到底怎么才能制作 initd ,困难么?其实也不难,slackware 已经提供了一个脚本包,mkinitrd-1.0.1-i486-1.tgz ,检查已确保你的系统已经安装了这个包。
然后 cd /boot
a、使你的系统支持 reiserfs 文件系统
mkinitrd -c -k 2.6.8.1 -m reiserfs
b、使系统支持 ext3 文件系统
mkinitrd -c -k 2.6.8.1 -m jbd:ext3 -f ext3 -r /dev/hdb3
更多的可以参看 man mkinitrd 。
运行这个脚本将在 /boot 下创建一个目录 /boot/inird-tree 和一个文件/boot/inird.gz 。其中 initrd.gz 就是我们需要的 initrd 。

3、编辑 /etc/lilo.conf
添加
# bootable partition config begins
image = /boot/vmlinuz-generic-2.6.8.1
initrd = /boot/initrd.gz
root = /dev/hdaX (把 X 替换成你实际的根文件系统所在的分区号)
label = Linux2681
read-only
# Linux bootable partition config ends
行运行:
lilo

4、重新启动计算机,选择 新的内核。OK ,新的内核已经运行在你的系统上了。

阅读(786) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~