2024年4月28日发(作者:)

Linux内核升级全过程手把手教你一次成功

由于开发环境需要在linux-2.6内核上进行,于是准备对我的虚拟机上的Linux系统

升级。没想到这一弄就花了两天时间(反复装系统,辛苦啊~~),总算把Linux系统从2.4.20-8

内核成功升级到了2.6.18内核。

网上虽然有很多介绍Linux内核升级的文章,不过要么过时,下载链接失效;要么表

达不清,不知所云;更可气的是很多文章在转载过程中命令行都有错误。刚开始我就是在这

些“攻略”的指点下来升级的,以致于浪费了很多时间。

现在,费尽周折,升级成功,心情很爽,趁性也来写个“升级攻略”吧!于是特意又

在虚拟机上重新安装一个Linux系统,再来一次完美的升级,边升级边记录这些步骤,写成

一篇Linux内核升级记实录(可不是回忆录啊!),和大家一起分享~~!

首先说明,下面带#号的行都是要输入的命令行,且本文提到的所有命令行都在终端里

输入。接下来,让我们一起开始精彩的Linux内核升级之旅吧!

一、准备工作

启动Linux系统,并用根用户登录,进入终端模式下。

1、查看Linux内核版本

#uname-a

如果屏幕显示的是2.6.x,说明你的已经是2.6的内核,也用不着看下文了,该干什么干什么

去吧!~~~如果显示的是2.4.x,那恭喜你,闯关通过,赶快进行下一步。

2、下载2.6内核源码

下载地址:/pub/linux/kernel/v2.6/2

3、下载内核升级工具

(1)下载2

/pub/linux/utils/kernel/module-init-tools/module-init-tool

2

(2)下载

/fedora/linux/3/i386//mkinitrd-4.1.18-2.i386.r

pm

(3)下载

/fedora/linux/3/i386//lvm2-2.00.25-1.01.i386.r

pm

(4)下载

/fedora/linux/3/i386//device-mapper-1.00.19-2.

(2.6.18内核和这4个升级工具我都有备份,如果以上下载地址失效,请到

/guestbook留下你的邮箱,我给你发过去)

二、配置工作

好啦,2.6内核和4个升级工具都下载完了(少一个也不行,如果没有下载齐全,请不要尝试

下面的步骤,升级是不会成功的),下面回到Linux系统中开始配置工作吧。

4、将下载好的内核和4个升级工具都拷贝到/usr/src文件夹下。怎么拷贝就不用我教

了吧~~~~不会拷贝的去撞墙吧!~~呵呵!

5、拷贝完毕,开始解压新内核,具体操作请依次执行以下命令:

#cd/usr/src(进入到/usr/src目录下,如果已经在/usr/src目录下,可不执行该命令)

#rm–rflinux(删除linux文件夹。值得一提的是,如果内核先前从未编译过,则没有

这个文件夹,此命令行可略过)

#2(解压新内核)

#ln-slinux-2.6.18linux(重新生成linux文件夹)

6、安装module-init-tools工具包

在/usr/src目录下,依次执行下列命令:

#2(解压module-init-tools)

#cdmodule-init-tools-3.2(由/usr/src目录进入module-init-tools目录下)

#./configure--prefix=/

#makemoveold

#makeallinstall

#.//etc/

7、安装另外三个升级工具

回到/usr/src目录下,依次执行下列3个命令来安装另外三个升级工具:

#(注意,这里一定要加入--nodeps参

数,下同)

#

#

如果不更新以上几个升级包,在后面编译内核时会提示以下错误:

mkinitrdfailed

make[1]:***[install]Error1

make:***[install]Error2

8、配置内核选项。有点繁琐,~~希望一次成功哦~~。

#cdlinux-2.6.18(进入到/usr/src/linux-2.6.18目录下)

#makemrproper(该命令可确保源代码目录下没有不正确的.o文件)

#makemenuconfig(配置内核各选项)

此时会出现一个图形界面,列出了所有的内核配置选项,有的选项下还有子选项,你

可以用方向键来选择,用Y键来确定。经过我多次试验,大多数选项默认就行,以下几个选

项必须选择(请认真核对下面每一个选项,否则编译很有可能前功尽弃):

(1)LoadableModulesupport选项中,一定要选上“Moduleunloading”和

“Automatickernelmoduleloading”这两项;

(2)DeviceDrivers--->BlockDevices中一定要选上Loopbackdevicesupport;

DeviceDrivers--->Multi-devicesupport(RAIDandLVM)”处要选上“devicemapper

support”;

DeviceDrivers--->Graphicssupport”,一定要选上”Supportforframebuffer

devices”;

DeviceDrivers--->;USBsupport--->选上”USBMassStoragesupport”(如果是在

实环境中,想要更多USB支持,就全选吧。我的是在虚拟机中,用不着了)

DeviceDrivers--->;Networkdevicesupport--->;Ethernet(10or100Mbit)--->;

<*>;AMDPCnet32PCIsupport

(3)Filesystem--->(以下9个选项是关于ext2和ext3文件系统配置,全部选上)

Secondextendedfssupport

Ext2extendedattributes

Ext2POSIXAccessControlLists