ADSL网络协议PPPOE

作为2.6.0的最后一个测试版本 , 2.6测试版经历了更多的检测器的检验 , 尤其是在当前对开发者进一步追捕内核bugs和稳定工作有非常重大的意义 。一旦2.7版本开发树开展起来 , 必定将带来其新特征的研究热潮 。
本文的目的在于为2.4内核的读者提供一些升级到2.6内核的技巧 。因为2.6内核仍然是个发展中的内核 , 或许你在运行中会碰到些问题 , 但是它的总体性能和稳定性还是非常好的 。
小知识:Linux采用了双树系统 。一个树是稳定树(stable tree) , 另一个树是非稳定树(unstable tree)或者开发树(development tree) 。一些新特性、实验性改进等都将首先在开发树中进行 。假如在开发树中所做的改进也可以应用于稳定树 , 那么在开发树中经过测试以后 , 在稳定树中将进行相同的改进 。一旦开发树经过了足够的发展 , 开发树就会成为新的稳定树 。
目标用户
本文主要针对Lunix2.4内核的用户 。(假如之前没有的 , 可见The Linux Kernel HOWTO)
预备工作:首先做好重要数据的备份工作
在开始之前 , 请确定你的所有数据已经备份 。
第一步:当前2.6内核的安装(获取)
首先 , 所有Linux内核的官方版本可以在http://kernel.org/. 找到 。通过镜像站点下载内核程序可以比较快捷迅速些 。kernel.org 镜像站点列表:http://kernel.org/mirrors。
然后下载GnuPG , 它主要用于检验新的内核程序的真实性和合法性 。(http://www.kernel.org/signature.Html.)
第二步:熟悉已有文件
至少需要熟悉顶级README文件、Documentation目录中的change文件 , 它们都是分布式的Linux内核源代码 。
因为2.6.0-test是内核发展中的一个阶段(2.6.0没有扩展名-test , 即是2.6的最初版本) , 所以其顶级README文件引自2.5开发内核的README文件 。你将从这个文件中获得许多成功编译Linux内核的技巧 。(具体内容见附1)
“Documentation/Changes”文件列出了发展2.5内核的新需求 , 提供了新内核程序升级的软件列表 。(主要内容见附2)
第三步:升级系统内每个change文件的版本
新的2.6内核的升级工作涉及到许多实用程序的升级 。对于某些change文件中列出的实用程序也不必担心 , 它们或许只是某种文件系统的非凡例子而已 。但是 , 下面的文件还是必须至少要满足到下表给出的的最低版本:
Name: Minimum version: How to find version:
Gnu C Compiler 2.95.3 gcc--version
Gnu Make 3.78 make--version
inutils 2.12 ld-v
util-linux 2.10o fdformat--version
module-init-tools 0.9.9 depmod-V
rocps 2.0.9 ps--version
[procps 2.x] [procps .x]
(若有变动 , 参见“Documentation/Change”中的最新更新 。具体可见附2)
下面的实用程序是文件系统中的非凡程序 。若运行ext2 或ext3 , 那么就必须升级e2fsprogs 。若运行jfs , 就必须升级jfsutils , 等等 。如:
Name: Minimum version: How to find version:
e2fsprogs 1.29 tune2fs
jfsutils 1.0.14 fsck.jfs -V
reiserfsprogs 3.6.3 reiserfsck–V 2>&1 grep reiserfsprogs
xfsprogs 2.1.0 xfs_db -V
fs-utils 1.0.5 showmount --version
另外 , 少数实用程序当你用到它时才需要升级的有:
Name: Minimum version: How to find version:
cmcia-cs 3.1.21 Cardmgr -V
quota-tools 3.09 Quota -V
PPP 2.4.0 ppd--version
isdn4k-utils 3.1pre1 Isdnctrl 2>&1grep version
oprofile 0.5.3 oprofiled--version
假如首次运行ALSA , 请访问http://www.alsa-project.org/获取最新的alsa-lib 和 alsa-utils 。
第四步:配置新内核
这里 , 你所注重到的首要变化之一就是新的结构体系的形成 。旧的TK/Tcl“xconfig”结构由新的QT“xconfig”所取代 。当然 , GTK“gconfig”也行 。

推荐阅读