Chinaunix

标题: 【基于centos4.3的linux发行版制作过程】 [打印本页]

作者: thatday    时间: 2006-08-24 16:59
标题: 【基于centos4.3的linux发行版制作过程】
以前研究的东西了,最近看到网上有很多人为了制作自己的发行版,苦苦挣扎而不得其道,所以把自己的笔记拿出来与大家一起分享!

注:其中路径/data/disk是我的制作光盘路径,各位可以根据自己的环境进行修改。

=======================================================

基本过程:

定制RPM包
修改 comps.xml
重编comps.rpm
重新生成hdlist
建立pkglist
利用buildinstall处理安装程序
利用mkisofs制作安装映象

------------------------------------------------
母系统是centos4.3,为了软件最新,先升级自己的系统相关软件
rpm --import http://mirror.be10.com/centos/4.3/os/i386/RPM-GPG-KEY-centos4
rpm --import /usr/share/doc/centos-release-4/RPM-GPG-KEY >> /dev/null
yum -y update

以下为制作安装光盘必须的包
yum install pump-devel gtk2-devel booty bogl-devel bogl-bterm elfutils-devel beecrypt-devel dietlibc
yum install anaconda anaconda-runtime busybox-anaconda

=============================================================================
Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
anaconda                i386       10.1.1.37-1.centos4.2  base              4.3 M
anaconda-runtime        i386       10.1.1.37-1.centos4.2  base              526 k
busybox-anaconda        i386       1.00.rc1-5       base              177 k
Installing for dependencies:
anaconda-help           noarch     10.1.0-1.centos4  base              800 k
bogl                    i386       0.1.18-4         base               93 k
booty                   i386       0.44.3-1         base               85 k
pyparted                i386       1.6.8-2          base               22 k



检查RPM包依赖关系
cd /data/disk/EServer/RPMS
mkdir /tmp/testdb
rpm --initdb --dbpath /tmp/testdb
rpm --test --dbpath /tmp/testdb -Uvh *.rpm

以下是具体步骤:
1.设置python的系统环境变量
export PYTHONPATH=/usr/lib/anaconda
export PATH="$PATH:/usr/lib/anaconda-runtime"

2.更新光盘的文件树
genhdlist --productpath=EServer /data/disk


3.生成下一步需要的pkgfile文件
pkgorder --product EServer /data/disk/ EServer > /data/pkgfile

4.编译生成光盘引导文件和图形安装界面镜像
buildinstall --pkgorder /data/pkgfile \
--version "1.2" \
--product "EServer" \
--release "Beta" \
--prodpath EServer /data/disk

5.制作 ISO

mkisofs -r -T -J -V "EServer 1.2" -b isolinux/isolinux.bin \
-c isolinux/boot.cat -no-emul-boot -boot-load-size 4 \
-boot-info-table -x "lost+found" \
-o /data/EServer.iso /data/disk


文件isolinux/boot.cat 会由mkisofs 程序随后产生
----------------------------------------------------

为光盘生成md5验证值
implantisomd5 /data/EServer.iso
Inserting md5sum into iso image...
md5 = b49c693f83c23d7e746dfe0f81a56016
Setting supported flag to 0



如果想将图形界面修改成个性化的界面,需要修改stage2.img(光盘引导镜像,如果硬盘安装,需要修改其他img文件……)

附注:
anaconda资源修改:

mkdir /data/anaconda
mount -o loop /data/disk/EServer/base/stage2.img /data/anaconda
cd /data/anaconda
tar -cvf /data/stage2.tar .
mkdir /data/stage2
cd /data/stage2
tar -xvf /data/stage2.tar
chmod +w -R ../stage2
#-----------修改资源-----------------#
.....
....
#重新打包img镜像
cd /data
mkcramfs stage2/ stage2.img.new
cp /data/stage2.img.new /data/disk/EServer/base/stage2.img




光盘启动画面修改:

yum -y install syslinux

The graphic is in a somewhat odd format, called LSS16. As the name indicates, it is limited to 16 colors. To edit the graphic, first convert it to a PPM:

lss16toppm < splash.lss > splash.ppm

Next, edit the file using The Gimp. Save the resulting file as an indexed gif with no more than 14 colors (plus black and white, for a total of 16). Then, convert the file to a pnm/ppm:

giftopnm < splash.gif | ppmtolss16 > splash.lss
cp splash.lss /data/disk/isolinux/splash.lss


yum install gcc xorg-x11-devel
编译gif2lss-0.4.tar.gz


保证光盘里面rpm目录下有以下包,这些包是图形化界面制作所必须的,没有他们,buildinstall将会报错。

anaconda
anaconda-runtime
anaconda-help
anaconda-product
busybox
busybox-anaconda
memtest86+
fonts-xorg-base
xorg-x11
joe
kernel*

附注:
rpm -qpi #显示rpm包的信息
rpm -Uvh #安装rpm包
rpm -qpl #列rpm包内的文件


上面这些步骤,是经过实践之后的笔记,所以一般都能够成功,还有一些细节部分,如comps.xml的修改,语法,就不多介绍了。

如果发现有什么问题,欢迎跟帖。

[ 本帖最后由 thatday 于 2006-8-24 17:20 编辑 ]
作者: thatday    时间: 2006-08-24 17:03
另外,发布一个基于centos4.3的邮件系统光盘
ftp://mailstudy:mailstudy@202.105.139.140/postfix_extsuite_CD/
光盘大小为350M,修改了部分rpm包,加入vim彩色字体支持,还有gcc编译环境等,主要功能是集成了postfix、extmail的webmail,具备邮件垃圾过滤、病毒过滤、黑白名单等功能。。
如有问题,也请跟帖。
作者: nntp    时间: 2006-08-24 17:44
thanks, pretty good.
作者: thatday    时间: 2006-08-24 20:28
别夸,看了一些版主的帖子,尤其是那篇Oracle 10gR2 RAC+ RHEL4 + VMWare GSX。最欣赏里面的一句话:


linux就是动手积累的学科,你越是不愿意自己去搞,水平就越是臭,千万不要以为看了n个别人的帖子,你就会了......



作者: deargentle    时间: 2006-08-24 21:14
标题: 不错不错,最近正在看,真是想什么有什么,谢谢。
回头有问题还要向你请教
要不吝赐教啊

二楼发布的那个光盘iso不错,非常感谢。

[ 本帖最后由 deargentle 于 2006-8-25 10:24 编辑 ]
作者: nntp    时间: 2006-08-24 23:34
原帖由 thatday 于 2006-8-24 20:28 发表
别夸,看了一些版主的帖子,尤其是那篇Oracle 10gR2 RAC+ RHEL4 + VMWare GSX。最欣赏里面的一句话:







有没有兴趣切磋一下opensuse based distro.?  :em11:
作者: thatday    时间: 2006-08-25 08:56
opensuse我还没用过,因为以前用过suse9.3和10,只觉得比较臃肿,而且那时用X,不知为何,SUSE的X容易挂掉,所以对suse的好感不如debian和redhat,以后准备用oracle,所以我会试试suse的,到时候再向版主请教。
作者: thatday    时间: 2006-08-25 08:57
原帖由 deargentle 于 2006-8-24 21:14 发表
回头有问题还要向你请教
要不吝赐教啊


请不必客气,大家一起探讨。。
作者: wenheping    时间: 2006-08-28 00:02
请教:以下这两步如何完成?

修改 comps.xml
重编comps.rpm
作者: thatday    时间: 2006-08-28 17:01
一般来说,只需要修改comps.xml,重新加入或者删除某些包,或者组,至于comps.xml文件里面的具体语法,网上有介绍的。
作者: soochowgreen    时间: 2006-08-29 10:18
原帖由 thatday 于 2006-8-24 17:03 发表
另外,发布一个基于centos4.3的邮件系统光盘
ftp://mailstudy:mailstudy@202.105.139.140/postfix_extsuite_CD/
光盘大小为350M,修改了部分rpm包,加入vim彩色字体支持,还有gcc编译环境等,主要功 ...



原来大大在此处呢。
前几天给你发了封邮件,还有几个问题请教

1. SMTP 验证无法通过;

2. extman 中的图形日志还有错误;

请指教。感谢。
作者: thatday    时间: 2006-08-29 16:42
有几个小问题:
1, /etc/sysconfig/i18n里面,默认第一行LANG最好改为en_US
2, 不记得了……

第一个比较严重,启动或者关闭系统的时候会有提示,第二个问题也是,根据提示稍微修改一下就行了。因为非本人FTP,更新光盘比较麻烦,所以很久都没有更新,造成不便深表歉意....
作者: soochowgreen    时间: 2006-08-30 09:31
原帖由 thatday 于 2006-8-29 16:42 发表
有几个小问题:
1, /etc/sysconfig/i18n里面,默认第一行LANG最好改为en_US
2, 不记得了……

第一个比较严重,启动或者关闭系统的时候会有提示,第二个问题也是,根据提示稍微修改一下就行了。因为非本人FTP ...



第2个我还是没有尝试成功
根据其他教程重新灌了一遍日志部分,也还是有错误

请指点,谢谢
作者: 割鹿刀    时间: 2006-08-30 09:47
感谢lz,收藏了~~
作者: soochowgreen    时间: 2006-08-31 11:58
原帖由 soochowgreen 于 2006-8-30 09:31 发表



第2个我还是没有尝试成功
根据其他教程重新灌了一遍日志部分,也还是有错误

请指点,谢谢




/etc/sysconfig/i18n里面,第一行 LANG  值本来就是 en_US:en
作者: lincoln_834100    时间: 2006-09-06 16:01
不错!谢了!我收下了。
作者: thatday    时间: 2006-09-07 15:04
extman的图形日志部分,如果安装了我的光盘,好像很少有人说过有问题的呀,是不是跟你的硬件有关系?
作者: wenheping    时间: 2006-09-10 23:18
保证光盘里面rpm目录下有以下包,这些包是图形化界面制作所必须的,没有他们,buildinstall将会报错。

anaconda
anaconda-runtime
anaconda-help
anaconda-product
busybox
busybox-anaconda
memtest86+
fonts-xorg-base
xorg-x11
joe
kernel*


请问:这些包应该一开始就复制到RPMS目录里面还是在完成genhdlist之后呢?

好象楼主的EServer光盘的RPMS目录里面也没有这些包,这是为什么呢?
作者: thatday    时间: 2006-09-13 09:45
这些包是anaconda-runtime程序生成光盘镜像文件所必须的,如果没有这些包,在buildall的时候就会报错的。
当然,如果不用安装x界面,这些包又不是光盘必须的,你可以在生成光盘目录文件之后去掉这些包,再重新genhdlist一次目录树,在comps.xml文件里面不需要包含以上这些包。最后才生成光盘ISO文件。

如果你不需要光盘非常精简,就可以不用理会这些,实际上,这些包只是在编译光盘的时候有用。
作者: wenheping    时间: 2006-09-14 16:28
再请教:在buildinstall命令之前,是否需要把原来的安装光盘里面的
isolinux目录复制过来?
作者: thatday    时间: 2006-09-15 09:42
不需要,建立一个空目录就可以了,目录里面的文件都是编译生成的
作者: wenheping    时间: 2006-09-21 11:04
再请教:
     请问stage2.img中有哪些资源是可以修改的?
    楼主的stage2.img比centos中的同一文件要小,请问楼主做了哪些剪裁?

楼主的这段文字:
   附注:
anaconda资源修改:

mkdir /data/anaconda
mount -o loop /data/disk/EServer/base/stage2.img /data/anaconda
cd /data/anaconda
tar -cvf /data/stage2.tar .
mkdir /data/stage2
cd /data/stage2
tar -xvf /data/stage2.tar
chmod +w -R ../stage2
#-----------修改资源-----------------#
.....

可是我并没有找到stage2.tar这个文件。

[ 本帖最后由 wenheping 于 2006-9-21 11:06 编辑 ]
作者: wenheping    时间: 2006-09-21 11:10
还有几个问题是:
   1 楼主的方法应该也适用于Fedora Core吧?

   2 有时候buildinstall之后,只生成了vmlinuzi586和initi586,而没有生成vmlinuz和initrd.img,请问楼主遇到过这种情况吗?
    可能的产生原因是什么呢?

   3 楼主你的RPMS目录下是否有些RPM并没有安装,或者说还可以剪裁?

[ 本帖最后由 wenheping 于 2006-9-21 11:12 编辑 ]
作者: thatday    时间: 2006-09-21 11:22
可以用于fc的,buildinstall之后,正确的话会生成和原来光盘一样的光盘目录和文件,rpms目录下的包,可以根据comps.xml里面的设置来选择安装..
作者: thatday    时间: 2006-09-21 11:24
原帖由 wenheping 于 2006-9-21 11:04 发表
再请教:
     请问stage2.img中有哪些资源是可以修改的?
    楼主的stage2.img比centos中的同一文件要小,请问楼主做了哪些剪裁?

楼主的这段文字:
   附注:
anaconda资源修改:

.....

可是我并没有找到stage2.tar这个文件。


这个文件是buildinstall之后生成的,而我只是将这个文件解压之后重新打包,上面的命令你看清楚了.

还有关于修改的内容,你可以具体的看看stage.img里面的内容,你愿意怎么改就怎么改,通常只是改一些图片资源,当然,也可以修改安装分组,即那些python文件.

[ 本帖最后由 thatday 于 2006-9-21 11:25 编辑 ]
作者: wenheping    时间: 2006-09-24 01:06
谢谢前面的指教。

再请问:
1 已解决

  2 same

3 如果我希望自己的系统只以字符界面安装的话,应该怎么做?


Kickstart里面有这个选项.

[ 本帖最后由 wenheping 于 2006-9-27 22:06 编辑 ]
作者: 87250222    时间: 2006-09-26 21:20
本人亲自教你做.....

有什么问题 联系QQ 87250222
作者: thatday    时间: 2006-09-30 10:41
对了,请教楼上这位高人吧
作者: 笨_笨    时间: 2006-10-15 17:35
[root@mail RPMS]# rpm --test --dbpath /tmp/testdb -Uvh *.rpm
warning: acl-2.2.23-5.i386.rpm: V3 DSA signature: NOKEY, key ID 443e1821
warning: ncftp-3.1.8-2.i386.rpm: V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing...                ########################################### [100%]
        file /usr/lib/perl5/5.8.5/i386-linux-thread-multi/MIME/Base64.pm conflicts between attempted installs of perl-5.8.5-24.RHEL4 and perl-MIME-Base64-3.05-1hzq
        file /usr/lib/perl5/5.8.5/i386-linux-thread-multi/MIME/QuotedPrint.pm conflicts between attempted installs of perl-5.8.5-24.RHEL4 and perl-MIME-Base64-3.05-1hzq
        file /usr/lib/perl5/5.8.5/i386-linux-thread-multi/auto/MIME/Base64/Base64.so conflicts between attempted installs of perl-5.8.5-24.RHEL4 and perl-MIME-Base64-3.05-1hzq
        file /usr/share/man/man3/MIME::Base64.3pm.gz conflicts between attempted installs of perl-5.8.5-24.RHEL4 and perl-MIME-Base64-3.05-1hzq
        file /usr/share/man/man3/MIME:uotedPrint.3pm.gz conflicts between attempted installs of perl-5.8.5-24.RHEL4 and perl-MIME-Base64-3.05-1hzq
[root@mail RPMS]#

这是什么错误,怎么解决啊?
作者: 笨_笨    时间: 2006-10-15 17:38
[root@mail RPMS]# buildinstall --pkgorder /tmp/pkgfile --version "4.3" --product "CentOS" --release "Beta1" --prodpath CentOS /tmp/disk
warning: /tmp/disk/CentOS/RPMS/anaconda-runtime-10.1.1.37-1.centos4.2.i386.rpm: V3 DSA signature: NOKEY, key ID 443e1821
Running buildinstall...
/tmp/disk/buildinstall.tree.3057 /tmp/disk/CentOS/RPMS
/tmp/disk/CentOS/RPMS
Going to run buildinstall again
warning: /tmp/disk/CentOS/RPMS/anaconda-runtime-10.1.1.37-1.centos4.2.i386.rpm: V3 DSA signature: NOKEY, key ID 443e1821
Building images...
Assembling package list...
Expanding text packages....
retrieving timezones
Creating nsswitch.conf
Fixing up /etc/man.config to point into /mnt/sysimage
Running mkfontdir...
/tmp/disk/buildinstall.tree.3057/upd-instroot: line 930: /usr/X11R6/bin/mkfontdir: No such file or directory
Getting pango modules
Getting gtk2 input method modules
Getting gtk2 gdk-pixbuf loaders
Scrubbing trees... /tmp/treedir.3070/image-template
Compressing .mo files in stage2 images...
Creating fontconfig cache
Creating debug dir
Patching python library...
/tmp/disk/CentOS/RPMS
Removing unused python files in hdimage... * setting file_context_path to nil
done.
Cleaning ramdisk install images...
Getting package order...
warning: ignore package name relation(s) [0]    pango-gtkbeta-devel -> pango-gtkbeta
warning: ignore package name relation(s) [1]    XFree86 -> Mesa
warning: ignore package name relation(s) [2]    xorg-x11 -> Mesa
warning: ignore package name relation(s) [3]    compat-glibc -> db2
warning: ignore package name relation(s) [4]    compat-glibc -> db1
warning: ignore package name relation(s) [5]    pam -> initscripts
warning: ignore package name relation(s) [6]    initscripts -> sysklogd
warning: ignore package name relation(s) [7]    arts -> kdelibs-sound
warning: ignore package name relation(s) [8]    libgnomeprint15 -> gnome-print
warning: ignore package name relation(s) [9]    nautilus -> nautilus-mozilla
warning: ignore package name relation(s) [10]   tcl -> postgresql-tcl
warning: ignore package name relation(s) [11]   libtermcap -> bash
warning: ignore package name relation(s) [12]   modutils -> vixie-cron
warning: ignore package name relation(s) [13]   ypbind -> yp-tools
warning: ignore package name relation(s) [14]   ghostscript-fonts -> ghostscript
......
......
warning: ignore package name relation(s) [50]   gtk+ -> gdk-pixbuf
warning: ignore package name relation(s) [51]   nautilus -> nautilus-cd-burner
warning: LOOP:
warning: removing cracklib-2.7-29 "Requires: cracklib-dicts@i386 = 2.7-29" from tsort relations.
warning:     cracklib-2.7-29                          Requires: cracklib-dicts@i386 = 2.7-29
warning: removing cracklib-dicts-2.7-29 "Requires(auto): libcrack.so.2" from tsort relations.
warning:     cracklib-dicts-2.7-29                    Requires(auto): libcrack.so.2
warning: LOOP:
warning: removing initscripts-7.93.24.EL-1.1.centos4 "Requires: /sbin/nash" from tsort relations.
warning:     initscripts-7.93.24.EL-1.1.centos4       Requires: /sbin/nash
warning:     mkinitrd-4.2.1.6-1                       PreReq: dev
warning:     udev-039-10.12.EL4                       PreReq: hotplug
warning: removing hotplug-2004_04_01-7.6 "Requires: initscripts >= 7.93.14.EL" from tsort relations.
warning:     hotplug-2004_04_01-7.6                   Requires: initscripts >= 7.93.14.EL
warning: LOOP:
warning: removing initscripts-7.93.24.EL-1.1.centos4 "Requires: dev" from tsort relations.
warning:     initscripts-7.93.24.EL-1.1.centos4       Requires: dev
warning:     udev-039-10.12.EL4                       PreReq: lvm2
warning: removing lvm2-2.02.01-1.3.RHEL4 "Requires: kernel >= 2.6.9-24" from tsort relations.
warning:     lvm2-2.02.01-1.3.RHEL4                   Requires: kernel >= 2.6.9-24
warning:     kernel-smp-2.6.9-34.0.1.EL               PreReq: initscripts >= 5.83
warning: ignore package name relation(s) [0]    pango-gtkbeta-devel -> pango-gtkbeta
warning: ignore package name relation(s) [1]    XFree86 -> Mesa
warning: ignore package name relation(s) [2]    xorg-x11 -> Mesa
warning: ignore package name relation(s) [3]    compat-glibc -> db2
warning: ignore package name relation(s) [4]    compat-glibc -> db1
...
...
warning: ignore package name relation(s) [51]   nautilus -> nautilus-cd-burner
warning: LOOP:
warning: removing cracklib-2.7-29 "Requires: cracklib-dicts@i386 = 2.7-29" from tsort relations.
warning:     cracklib-2.7-29                          Requires: cracklib-dicts@i386 = 2.7-29
warning: removing cracklib-dicts-2.7-29 "Requires(auto): libcrack.so.2" from tsort relations.
warning:     cracklib-dicts-2.7-29                    Requires(auto): libcrack.so.2
warning: LOOP:
warning: removing perl-5.8.5-24.RHEL4 "Requires(auto): perl(MIME::Base64)" from tsort relations.
warning:     perl-5.8.5-24.RHEL4                      Requires(auto): perl(MIME::Base64)
warning: removing perl-MIME-Base64-3.05-1hzq "Requires(auto): /usr/bin/perl" from tsort relations.
warning:     perl-MIME-Base64-3.05-1hzq               Requires(auto): /usr/bin/perl
warning: LOOP:
warning: removing initscripts-7.93.24.EL-1.1.centos4 "Requires: /sbin/nash" from tsort relations.
warning:     initscripts-7.93.24.EL-1.1.centos4       Requires: /sbin/nash
warning:     mkinitrd-4.2.1.6-1                       PreReq: dev
warning:     udev-039-10.12.EL4                       PreReq: hotplug
warning: removing hotplug-2004_04_01-7.6 "Requires: initscripts >= 7.93.14.EL" from tsort relations.
warning:     hotplug-2004_04_01-7.6                   Requires: initscripts >= 7.93.14.EL
warning: LOOP:
warning: removing rrdtool-1.2.12-1hzq "Requires(auto): perl(RRDp)" from tsort relations.
warning:     rrdtool-1.2.12-1hzq                      Requires(auto): perl(RRDp)
warning: removing perl-rrdtool-1.2.12-1hzq "Requires(auto): /usr/bin/rrdcgi" from tsort relations.
warning:     perl-rrdtool-1.2.12-1hzq                 Requires(auto): /usr/bin/rrdcgi
warning: LOOP:
warning: removing initscripts-7.93.24.EL-1.1.centos4 "Requires: dev" from tsort relations.
warning:     initscripts-7.93.24.EL-1.1.centos4       Requires: dev
warning:     udev-039-10.12.EL4                       PreReq: lvm2
warning: removing lvm2-2.02.01-1.3.RHEL4 "Requires: kernel >= 2.6.9-24" from tsort relations.
warning:     lvm2-2.02.01-1.3.RHEL4                   Requires: kernel >= 2.6.9-24
warning:     kernel-2.6.9-34.0.1.EL                   PreReq: initscripts >= 5.83
warning: ignore package name relation(s) [0]    pango-gtkbeta-devel -> pango-gtkbeta
warning: ignore package name relation(s) [1]    XFree86 -> Mesa
...
...
warning: ignore package name relation(s) [50]   gtk+ -> gdk-pixbuf
warning: ignore package name relation(s) [51]   nautilus -> nautilus-cd-burner
warning: LOOP:
warning: removing cracklib-2.7-29 "Requires: cracklib-dicts@i386 = 2.7-29" from tsort relations.
warning:     cracklib-2.7-29                          Requires: cracklib-dicts@i386 = 2.7-29
warning: removing cracklib-dicts-2.7-29 "Requires(auto): libcrack.so.2" from tsort relations.
warning:     cracklib-dicts-2.7-29                    Requires(auto): libcrack.so.2
warning: LOOP:
warning: removing initscripts-7.93.24.EL-1.1.centos4 "Requires: /sbin/nash" from tsort relations.
warning:     initscripts-7.93.24.EL-1.1.centos4       Requires: /sbin/nash
warning:     mkinitrd-4.2.1.6-1                       PreReq: dev
warning:     udev-039-10.12.EL4                       PreReq: hotplug
warning: removing hotplug-2004_04_01-7.6 "Requires: initscripts >= 7.93.14.EL" from tsort relations.
warning:     hotplug-2004_04_01-7.6                   Requires: initscripts >= 7.93.14.EL
warning: LOOP:
warning: removing initscripts-7.93.24.EL-1.1.centos4 "Requires: dev" from tsort relations.
warning:     initscripts-7.93.24.EL-1.1.centos4       Requires: dev
warning:     udev-039-10.12.EL4                       PreReq: lvm2
warning: removing lvm2-2.02.01-1.3.RHEL4 "Requires: kernel >= 2.6.9-24" from tsort relations.
warning:     lvm2-2.02.01-1.3.RHEL4                   Requires: kernel >= 2.6.9-24
warning:     kernel-2.6.9-34.0.1.EL                   PreReq: initscripts >= 5.83
warning: ignore package name relation(s) [0]    pango-gtkbeta-devel -> pango-gtkbeta
warning: ignore package name relation(s) [1]    XFree86 -> Mesa
warning: ignore package name relation(s) [2]    xorg-x11 -> Mesa
warning: ignore package name relation(s) [3]    compat-glibc -> db2
warning: ignore package name relation(s) [4]    compat-glibc -> db1
warning: ignore package name relation(s) [5]    pam -> initscripts
warning: ignore package name relation(s) [6]    initscripts -> sysklogd
warning: ignore package name relation(s) [7]    arts -> kdelibs-sound
warning: ignore package name relation(s) [8]    libgnomeprint15 -> gnome-print
warning: ignore package name relation(s) [9]    nautilus -> nautilus-mozilla
warning: ignore package name relation(s) [10]   tcl -> postgresql-tcl
warning: ignore package name relation(s) [11]   libtermcap -> bash
warning: ignore package name relation(s) [12]   modutils -> vixie-cron
warning: ignore package name relation(s) [13]   ypbind -> yp-tools
warning: ignore package name relation(s) [14]   ghostscript-fonts -> ghostscript
warning: ignore package name relation(s) [15]   usermode -> util-linux
warning: ignore package name relation(s) [16]   control-center -> xscreensaver
warning: ignore package name relation(s) [17]   kdemultimedia-arts -> kdemultimedia-libs
warning: ignore package name relation(s) [18]   initscripts -> util-linux
warning: ignore package name relation(s) [19]   XFree86-libs -> XFree86-Mesa-libGL
warning: ignore package name relation(s) [20]   xorg-x11-libs -> xorg-x11-Mesa-libGL
warning: ignore package name relation(s) [21]   mysql -> perl-DBD-MySQL
warning: ignore package name relation(s) [22]   ghostscript -> gimp-print
warning: ignore package name relation(s) [23]   bind -> bind-utils
warning: ignore package name relation(s) [24]   perl -> mod_perl
warning: ignore package name relation(s) [25]   perl -> perl-Filter
warning: ignore package name relation(s) [26]   coreutils -> pam
warning: ignore package name relation(s) [27]   perl -> mrtg
warning: ignore package name relation(s) [28]   perl-Date-Calc -> perl-Bit-Vector
warning: ignore package name relation(s) [29]   glibc-debug -> glibc-devel
warning: ignore package name relation(s) [30]   xinitrc -> XFree86
warning: ignore package name relation(s) [31]   xinitrc -> xorg-x11
warning: ignore package name relation(s) [32]   xemacs -> apel-xemacs
warning: ignore package name relation(s) [33]   gstreamer-tools -> gstreamer
warning: ignore package name relation(s) [34]   gimp -> gimp-print-plugin
warning: ignore package name relation(s) [35]   redhat-lsb -> redhat-lsb
warning: ignore package name relation(s) [36]   info -> ncurses
warning: ignore package name relation(s) [37]   aspell -> aspell-en
warning: ignore package name relation(s) [38]   dbus -> dbus-glib
warning: ignore package name relation(s) [39]   openjade -> docbook-dtds
warning: ignore package name relation(s) [40]   xemacs -> xemacs-sumo
warning: ignore package name relation(s) [41]   ncurses -> gpm
warning: ignore package name relation(s) [42]   cyrus-sasl -> openldap
warning: ignore package name relation(s) [43]   initscripts -> kernel
warning: ignore package name relation(s) [44]   initscripts -> kernel-smp
warning: ignore package name relation(s) [45]   rpm-libs -> rpm
warning: ignore package name relation(s) [46]   httpd -> httpd-suexec
warning: ignore package name relation(s) [47]   php -> php-pear
warning: ignore package name relation(s) [48]   gnome-python2 -> gnome-python2-bonobo
warning: ignore package name relation(s) [49]   openoffice.org-libs -> openoffice.org
warning: ignore package name relation(s) [50]   gtk+ -> gdk-pixbuf
warning: ignore package name relation(s) [51]   nautilus -> nautilus-cd-burner
warning: LOOP:
warning: removing initscripts-7.93.24.EL-1.1.centos4 "Requires: /sbin/nash" from tsort relations.
warning:     initscripts-7.93.24.EL-1.1.centos4       Requires: /sbin/nash
warning:     mkinitrd-4.2.1.6-1                       PreReq: dev
warning:     udev-039-10.12.EL4                       PreReq: lvm2
warning: removing lvm2-2.02.01-1.3.RHEL4 "Requires: kernel >= 2.6.9-24" from tsort relations.
warning:     lvm2-2.02.01-1.3.RHEL4                   Requires: kernel >= 2.6.9-24
warning:     kernel-hugemem-2.6.9-34.EL               PreReq: initscripts >= 5.83
warning: LOOP:
warning: removing cracklib-2.7-29 "Requires: cracklib-dicts@i386 = 2.7-29" from tsort relations.
warning:     cracklib-2.7-29                          Requires: cracklib-dicts@i386 = 2.7-29
warning: removing cracklib-dicts-2.7-29 "Requires(auto): libcrack.so.2" from tsort relations.
warning:     cracklib-dicts-2.7-29                    Requires(auto): libcrack.so.2
warning: LOOP:
warning: removing perl-MIME-Base64-3.05-1hzq "Requires(auto): /usr/bin/perl" from tsort relations.
warning:     perl-MIME-Base64-3.05-1hzq               Requires(auto): /usr/bin/perl
warning: removing perl-5.8.5-24.RHEL4 "Requires(auto): perl(MIME::Base64)" from tsort relations.
warning:     perl-5.8.5-24.RHEL4                      Requires(auto): perl(MIME::Base64)
warning: LOOP:
warning:     mkinitrd-4.2.1.6-1                       PreReq: dev
warning:     udev-039-10.12.EL4                       PreReq: hotplug
warning: removing hotplug-2004_04_01-7.6 "Requires: initscripts >= 7.93.14.EL" from tsort relations.
warning:     hotplug-2004_04_01-7.6                   Requires: initscripts >= 7.93.14.EL
warning: removing initscripts-7.93.24.EL-1.1.centos4 "Requires: kernel >= 2.6" from tsort relations.
warning:     initscripts-7.93.24.EL-1.1.centos4       Requires: kernel >= 2.6
warning:     kernel-hugemem-2.6.9-34.EL               PreReq: mkinitrd >= 4.2.1.6-1
warning: LOOP:
warning: removing rrdtool-1.2.12-1hzq "Requires(auto): perl(RRDp)" from tsort relations.
warning:     rrdtool-1.2.12-1hzq                      Requires(auto): perl(RRDp)
warning: removing perl-rrdtool-1.2.12-1hzq "Requires(auto): /usr/bin/rrdcgi" from tsort relations.
warning:     perl-rrdtool-1.2.12-1hzq                 Requires(auto): /usr/bin/rrdcgi
Making images...
Running: /tmp/treedir.3070/instimage/usr/lib/anaconda-runtime/getkeymaps i386 /tmp/keymaps-i386.10276 /tmp/treedir.3070/instimage
Loading /lib/kbd/keymaps/i386/azerty/be-latin1.map.gz
..........
Loading /lib/kbd/keymaps/i386/azerty/fr-pc.map.gz
Loading /lib/kbd/keymaps/i386/qwertz/fr_CH.map.gz
Loading /lib/kbd/keymaps/i386/qwertz/fr_CH-latin1.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/gr.map.gz
Loading /lib/kbd/keymaps/i386/qwertz/hu.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/hu101.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/is-latin1.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/it.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/it-ibm.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/it2.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/jp106.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/la-latin1.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/mk-utf.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/nl.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/no.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/pl.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/pt-latin1.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/ro_win.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/ru.map.utf8ru
Loading /lib/kbd/keymaps/i386/qwerty/ru.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/ru-cp1251.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/ru-ms.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/ru1.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/ru2.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/ru_win.map.gz
Loading /lib/kbd/keymaps/i386/qwertz/sg.map.gz
Loading /lib/kbd/keymaps/i386/qwertz/sg-latin1.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/sk-qwerty.map.gz
Loading /lib/kbd/keymaps/i386/qwertz/slovene.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/sv-latin1.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/trq.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/ua-utf.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/uk.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/us.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/us-acentos.map.gz
Loading /lib/kbd/keymaps/i386/qwerty/us.map.gz
cannot find package kernel-BOOT in path /tmp/disk/CentOS/RPMS
kernel-BOOT does not exist for i586 -- using kernel package
unpacking /tmp/disk/CentOS/RPMS/kernel-2.6.9-34.EL.i586.rpm.i586
Building i586 initrd-everything.img
Wrote /tmp/makebootdisk.tree.10276 (3276k compressed, 2025k free)
Building isolinux directory
/tmp/disk/buildinstall.tree.3057/mk-images.i386: line 34: pngtopnm: command not found
/usr/bin/ppmtolss16: stdin is not a PNM file at /usr/bin/ppmtolss16 line 215.
/tmp/disk/buildinstall.tree.3057/mk-images: Failed to create splash.lss
Writing .discinfo file
timestamp not specified; using the current time
[root@mail RPMS]#
作者: 笨_笨    时间: 2006-10-15 17:38
请教楼主,上面两个错误怎么解决?
作者: thatday    时间: 2006-10-16 09:21
你仔细看看,只是警告信息,你现在make iso试试看.然后用虚拟机试试这个ISO.
作者: 笨_笨    时间: 2006-10-16 13:53
不行。我这几天试了好几次。作出来的iso文件images目录里面没有boot.iso,diskboot.img文件,images\pxeboot目录里面也少几个文件。所以根本就启动不了。
作者: 笨_笨    时间: 2006-10-16 13:55
请看上面buildinstall的错误信息,好像不是警告信息。
作者: 笨_笨    时间: 2006-10-16 13:58
请楼主回复我。 搞了一个星期,头都搞晕了,还没搞出来,心里那个急呀。
作者: thatday    时间: 2006-10-16 14:02
你搞了一星期就头晕了?当初偶找了N多英文技术站点和邮件列表,前前后后折腾了几个月才有这么一点点心得,这个摸索呀....是少不了滴...
作者: 笨_笨    时间: 2006-10-16 14:07
哈哈,佩服楼主的精神。这个做好了很好的。只需要在最小配置集里再添加新的rpm包就可以实现新的服务器。
作者: 笨_笨    时间: 2006-10-16 14:08
我只想将所有的x界面,gnome之类的图形包全部去掉。
作者: diyself    时间: 2006-10-28 20:55
晕,还没有搞清楚是怎么搞的...
是不是要手动建立文件文件夹/data/disk/EServer/RPMS,并把r p m 包c p 到这里?
能说的再清楚点好吗?谢谢
-------------------------------------
检查RPM包依赖关系
cd /data/disk/EServer/RPMS
mkdir /tmp/testdb
rpm --initdb --dbpath /tmp/testdb
rpm --test --dbpath /tmp/testdb -Uvh *.rpm
作者: thatday    时间: 2006-11-03 17:49
当然需要手动拷贝RPM包的.
作者: loveKDE    时间: 2006-12-20 22:04
楼主你那个mail系统下不了啊?谁还有知道位置的.共享一个位置了?
作者: thatday    时间: 2006-12-26 15:59
http://www.extmail.org/forum/rea ... page=2&toread=1
因为有一些源码包是extmail和postfix社区的,所以需要经过extmail社区的长老们同意才能发布详细过程,还是等extmail发布的EMOS吧。

贴两张图,呵呵。





[ 本帖最后由 thatday 于 2006-12-26 18:00 编辑 ]
作者: thatday    时间: 2006-12-26 17:59
已经出来了。
http://www.extmail.org/forum/read.php?tid=3315&fpage=1




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2