📄 00000021.htm
字号:
<HTML><HEAD> <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER>发信人: ClearMind (锻炼+工作+学习+反省), 信区: Linux <BR>标 题: [翻译]RedHat 7.0 CD DIY <BR>发信站: BBS 水木清华站 (Mon Dec 25 10:19:47 2000) <BR> <BR>译注: <BR>我只是随便翻译了一下的。如果发现翻译什么重大问题,不妨告诉我一声。不需要看 <BR>翻译版本的,可以去看原文啦。原文链接是: <BR><A HREF="http://cambuca.ldhs.cetuc.puc-rio.br/RedHat7-CDs-HowTo.html">http://cambuca.ldhs.cetuc.puc-rio.br/RedHat7-CDs-HowTo.html</A> <BR> ______________________________________________________________________ <BR>RedHat7 CD制作mini-HowTo <BR>Miguel Freitas, <A HREF="mailto:miguel@cetuc.puc-rio.br">miguel@cetuc.puc-rio.br</A> <BR>v0.1.0, Dec 15 2000 <BR> <BR> 本文所讲述的是在变更RPM包和安装程序(anaconda)后重新制作RedHat 7发行版本的。 <BR> ______________________________________________________________________ <BR> <BR> <BR>介绍 <BR> <BR> 在我看来,这只是一个mini howto, 我还不知道会不会继续维护这篇文档呢。:) <BR>这篇文档的写作是为了帮助大家重新制作一个符合自己心意的RH7光盘。这篇东东是在我 <BR>制作包含ReiserFS日志文件系统支持的RH7安装版本的经验上写出来的。 <BR> <BR> <BR>基本要求 <BR> <BR> - 原始版本的RedHat7 CD, iso映像文件或者这些东东的内容物。 <BR> - 至少要有1.5G的剩余空间(要制作ISO映像文件则需要更多)。 <BR> - 安装好的RH7得有编译器,各种实用工具等。 <BR> <BR> <BR>1) 重新编译RPM包 <BR> <BR> 编译RPM包的知识对本文而言是离题的,但是有几个值得一提的地方。从一个已经 <BR>安装好的RH7上重新编译RH7的RPM包是很重要的。举个例子说,如果在RH6.2里面干这些活, <BR>可是要饱受煎熬的。因为这两个版本的库、编译器、头文件以及rpm工具版本都不尽相同。 <BR>如果您对rpm工具没有什么经验,那就找个rpm源码包src.rpm来体验吧。源码会安装在目录 <BR>/usr/src/redhat下面,然后您就可以开始实践了。如果您想要改变安装程序或者改变安装 <BR>媒介设置(比如因为内核过大,不得不把启动盘上的某个驱动搬到第二步去),那就得安装 <BR>anaconda得源码了。 Anaconda是一个极其复杂得程序,用于管理分区操作、硬件探测、X配 <BR>置、newt、python程序等等。请务必使用来自RH7原始版本的内核头文件来重新编译anaconda, <BR>因为这个东东实在太依赖这些头文件了。 <BR> <BR> <BR> <BR>2) 更替或者添加新的RPM包 <BR> <BR> 先来创建两个目录,譬如就是 ~/cd1 和 ~/cd2 吧。把原始版本的RedHat光盘里面的 <BR>内容拷贝到这两个目录里面。这就是您要开工的地方啦。 <BR> <BR> 我建议一开始就把RPM包放在两个或者多个不同的光盘上。为什么这么做呢?这里有一 <BR>些小小的奥秘,我在后面会提到的。当然了,您可以把所有的文件都复制到同一个地方去, <BR>然后编辑他们,最后在第四步之前把这些文件分成两份,每份不超过650M字节。 <BR> <BR> 好了,您现在就可以按照设想改变两个目录里面的那些RPM包了。假设您要把kde1 <BR>升级到kde2吧。您可以从kde.org那里下载RPM包然后替换掉原来的旧包,务必可要万般小心, <BR>可千万别弄错了哦。您可以把新文件复制到旧包所在的光盘上,删除旧包时请务必小心。 <BR> <BR> 切记切记!千千万万不要两个光盘都复制同样的RPM包!因为RH7里面提供的genhdlist <BR>工具(请看后面)不能争取处理重复文件,而且会导致安装时去寻找一个极其疯狂的光盘号 <BR>码,比如象-2172326这样的数字。 <BR> <BR> 我不清楚RedHat把RPM包安排到第一个盘或者第二个盘的标准是什么。我个人认为可能 <BR>会类似“最重要者优先”吧。事实上也可能看到以最小化安装方式安装RH7的时候,就不会 <BR>要求您放入第二张盘。更进一步细致的观察却表明出这个也不一定是完全正确的。在第一 <BR>张盘上竟然会有catalan和czech字典!众所周知,这两个地方RedHat是不会期望获得最大 <BR>市场份额的。那我还是坚持“最重要者优先”的原则吧。在第一个盘空间不足的时候,就 <BR>该把某些包挪到第二张盘去了。 <BR> <BR>3) 编辑"RedHat/base/comps"文件 <BR> <BR> 这个文件是用来告知安装程序anaconda,用户选择了某个组是应该有哪些包要安装。 <BR>如果您曾经使用anaconda安装过系统,您应该知道都有哪些组了(打印机支持、X视窗 <BR>环境、GNOME、KDE等等)。 <BR> <BR> 编辑cd1/RedHat/base/comps文件,把您可能要添加到某个组的任何包包括进来。 <BR>您可以不需要这一步,就看您要不要变了。 <BR> <BR>一些例子: <BR> <BR> 3.1) 我添加了reiserutils包,里面包含了用于处理ReiserFS分区的程序。当然了, <BR>这个应该是要安装在系统上的,因为这是能够创建一个新分区的基本要求嘛。这个的重要 <BR>性就跟e2fsprogs-xxx.rpm以及其中的mkfs程序一样。 <BR> <BR>1 Base { <BR> ... <BR> e2fsprogs <BR> ... <BR> reiser-utils <- 这是Base组里面新添的包 "Base" <BR> ... <BR>} <BR> <BR> <BR> 3.2) 新的KDE2桌面环境需要一个名为libmng的库。您不一定非得把libmng给加到 <BR>comps里面。但是加了进去您就可以在安装过程当中避免软件包校验性报错了。 <BR> <BR> <BR> <BR>4) 生成“RedHat/base/hdlist”文件(使用genhdlist来生成) <BR> <BR> hdlist文件对于以前摆弄过RedHat 5.x、6.x的人来说应该是很熟悉的了。hdlist <BR>包含的是所有可用包的必要信息。这些信息在安装过程当中是用来显示每一个包的用途 <BR>以及解决用户选择软件包后的依赖性问题。 <BR> <BR> 用以生成hdlist文件的程序叫做"genhdlist"。这个程序是anaconda-runtime包的 <BR>一部分,安装后是/usr/lib/anaconda-runtime。 <BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -