您的位置:首页 > 其它

将Red Hat 9.0 CD iso合成一张DVD iso的方法

2011-03-12 09:27 501 查看
现在的Linux发行版大多都有DVD版本的了, 一张DVD就搞定了,比如Fedora Core,SUSE,Debian等,但是RedHat
Linux
9却由于RedHat公司已经停止维护,所以目前没有DVD版,安装时还要不停地更换CD碟片,实在麻烦,后来在网上看到有些前辈已经实现这个工作,将
7CD制作在了一张DVD上,可以启动安装, 实在眼馋,后来自己就也琢磨着做了一个,现将制作过程记录如下。

最后,本人也是Linux初学者,文章中的不足之处还请大家不吝赐教,多提意见,谢谢!

版权信息:该文章版权由Wu Yin所有。可在非商业目的下任意传播和复制。对于商业

目的下对本文的任何行为需经作者同意。联系方式:lazy_fox#msn.com

*方法一*:

01. 实现的难点:

a. 必需是光盘启动

b. 让安装程序不知道所需要的

02. 需要的工具:

由于本人是Linux的初学者,对Linux操作不是很熟练,所以大部分工作在Windows下完成, 下面分别列出Windows下和Linux下需要用到的软件

a. Windows下需要的软件UltraISO,这个是用来从光盘制作镜像文件的工具,网上有下载

b. Linux下需要软件anaconda-runtime,这个软件在RedHat Linux
9的第二张CD中, 软件名称为:anaconda-runtime-9.0-4.i386.rpm,如果没有安装请现自行安装一下, 这个是用来告诉安
装程序哪个rpm文件在哪个地方可以找到

03.
首先在Windows下用UltraISO将CD1制作成镜像文件:RedHat_Linux_9_on_DVD.iso,为什么一定要用
UltraISO制作镜像文件,而不是直接拷贝,是因为CD1是可启动光盘,直接拷贝无法拷贝到启动信息,CD1的主要目录解构为:

-rwxr-xr-x 2 root root 248 2003-03-14 autorun

drwxr-xr-x 7 root root 4096 2003-03-14 dosutils

-rw-r--r-- 3 root root 6192 2003-03-14 EULA

-rw-r--r-- 3 root root 18385 2003-03-14 GPL

drwxr-xr-x 3 root root 2048 2003-03-14 images

drwxr-xr-x 2 root root 2048 2003-03-14 isolinux

-rw-r--r-- 3 root root 6127 2003-03-14 README

-rw-r--r-- 2 root root 13052 2003-03-14 README-Accessibility

-rw-r--r-- 2 root root 6686 2003-03-14 README.*

drwxr-xr-x 4 root root 2048 2003-03-14 RedHat

-rw-r--r-- 2 root root 25824 2003-03-14 RELEASE-*

-rw-r--r-- 3 root root 1910 2003-03-14 RPM-GPG-KEY

-r--r--r-- 1 root root 1823 2003-03-14 TRANS.TBL

04.

用UltraISO打开RedHat_Linux_9_on_DVD.iso文件,将CD2放到光驱中,用UltraISO把CD2的/RedHat
/RPMS/中的*.rpm文件(除去TRANS.TBL文件)全部拷贝到CD1(也就是RedHat_Linux_9_on_DVD.iso)的
/RedHat/RPMS目录下,CD3也这样操作,然后保存RedHat_Linux_9_on_DVD.iso文件,这样将得到了一个1G多的
RedHat_Linux_9_on_DVD.iso文件

05.
截止目前已经做完了大部分工作,解决了前面提到的难点a,现在切换到Linux系统下开始解决难点b,安装程序主要是根据/RedHat/base目录下
的hdlist文件和hdlist2文件来判断rpm包路径的,这两个文件就是用上面提到的anaconda-runtime制作的

06.

在Linux下将RedHat_Linux_9_on_DVD.iso文件mount到/mnt/cdrom/目录,并将其全部拷贝出到一个临时目录下
(因为此时的RedHat_Linux_9_on_DVD.iso文件是只读的),比如/root/rh9,然后在命令行中输入:

/usr/lib/anaconda-runtime/genhdlist /root/rh9/

这时在/root/rh9/RedHat/base目录下生成了新的hdlist文件和hdlist2文件,将这两个文件备份出来。

07.

再切换到Windows下:(,用UltraISO打开RedHat_Linux_9_on_DVD.iso文件,将刚才的hdlist文件和
hdlist2文件拷贝到/RedHat/base目录下,然后保存RedHat_Linux_9_on_DVD.iso文件。至此大功告成,剩下的就是
烧录光盘了

08. 缺点有:

a. 有些工作需要在Windows下完成,系统切换,拷贝,较麻烦,最好能全部在Linux下完成

*方法二*:

1.
首先你必須要有一个很大的磁盘空间 大概要3.5g是空闲的
建立一个文件夹Createiso,然后把你的3个iso文件shrike-i386-disk1.iso,shrike-i386-
disk2.iso,shrike-i386-disk3.iso放到Createiso中

2. 输入以下命令

mkdir shrike-i386-disc{1,2,3} shrike-docs

这是建立 shrike-i386-disc{1,2,3} 和 shrike-docs 这4个目录

3.将刚才放入Createiso中的3个iso镜像文件挂载到建立好的shrike-i386-disc{1,2,3} 这3个目录

mount -o ro,loop shrike-i386-disc1.iso shrike-i386-disc1

mount -o ro,loop shrike-i386-disc2.iso shrike-i386-disc2

mount -o ro,loop shrike-i386-disc3.iso shrike-i386-disc3

4 输入以下命令

cp -a shrike-i386-disc1/isolinux shrike-i386-disc1/.discinfo .

这是copy shrike-i386-disc1里的isolinux和.discinfo这两个文档到此目录

5 编辑.discinfo文件 将第4行的 1 换成 1,2,3 以表示要用這三个disk iso

6 输入以下命令(以下整个是一条指令)

mkisofs
-o shrike-i386-dvd.iso -b isolinux/isolinux.bin -c isolinux/boot.cat
-no-emul-boot -boot-load-size 4 -boot-info-table -R -m TRANS.TBL -x
shrike-i386-disc1/.discinfo -x shrike-i386-disc1/isolinux -graft-points
shrike-i386-disc1 .discinfo=.discinfo isolinux/=isolinux
RedHat/=shrike-i386-disc2/RedHat RedHat/=shrike-i386-disc3/RedHat
docs/=shrike-docs

最后生成shrike-i386-dvd.iso,大功告成.将shrike-i386-dvd.iso文件刻成DVD光盘,以后安装Red Hat 9.0时就不用换盘了,够酷吧!

注:mkisofs命令不是Linux系统自带的,用前需要先安装.文件名为mkisofs-2.01.a19-0.i686.rpm 此文件可到以下地址下载:

http://rpmfind.net/linux/RPM/Productivity_Multimedia_CD_Record.html

安装 rpm -ivh mkisofs-2.01.a19-0.i686.rpm 后,便可使用了!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: