1、安装好RHEL/CentOS 5.3系统 ,只选自己需要的包!我只选了基础包,而且在基础包中去掉了一些包,安装后大概有410个包!请你根据自己的情况来做!

2、在root根目录中有个install.log 文件,这个文件中记录了你安装系统时安装了哪些rpm包,文件内容应该像是这样的:

Installing libgcc-4.1.2-44.el5.x86_64 
 
warning: libgcc-4.1.2-44.el5: Header V3 DSA signature: NOKEY, key ID 37017186 
 
Installing setup-2.5.58-4.el5.noarch 
 
Installing filesystem-2.4.0-2.x86_64 
 
Installing basesystem-8.0-5.1.1.noarch 
 
Installing cracklib-dicts-2.8.9-3.3.x86_64 
 
Installing nash-5.1.19.6-44.x86_64 
 
………………. 
 

想办法把这个文件弄到win下,然后批量替换修改其中的内容,目的就是把你刚才安装的rpm包复制出来,修改后的内容应该像是这样的: 
 

cp -a /media/Server/libgcc-4.1.2-44.el5.x86_64.rpm /home/rhel5u3/Server 
 
cp -a /media/Server/setup-2.5.58-4.el5.noarch.rpm /home/rhel5u3/Server 
 
cp -a /media/Server/filesystem-2.4.0-2.x86_64.rpm /home/rhel5u3/Server 
 
cp -a /media/Server/basesystem-8.0-5.1.1.noarch.rpm /home/rhel5u3/Server 
 
cp -a /media/Server/cracklib-dicts-2.8.9-3.3.x86_64.rpm /home/rhel5u3/Server 
 

注 意要先新建目录rhel5u3和Server 还有挂载安装光盘到/media!如果你装的是CentOS那么应该把Server改成CentOS,然后vi copy.sh 将修改的install.log的内容粘贴进去保存,执行chmod +x copy.sh 给这个脚本执行权限,然后sh copy.sh执行它!现在继续复制一些需要的文件到rhel5u3目录中, 
 

cp -a /media/.discinfo /home/rhel5u3 
 
cp -a /media/.treeinfo /home/rhel5u3 
 
cp -aR /media/isolinux /home/rhel5u3 
 
cp -aR /media/images /home/rhel5u3 
 
cp -aR /media/Server/repodata /home/rhel5u3/Server 
 

如果你安装的是CentOS,应该把cp -aR /media/Server/repodata /home/rhel5u3/Server 改为 cp -aR /media/repodata /home/rhel5u3 
 

3、准备自动安装文件,在root根目录下有个anaconda-ks.cfg 将它复制过来 
 

cp ~/anaconda-ks.cfg /home/rhel5u3/isolinux 
 
cd  /home/rhel5u3/isolinux 
 
mv anaconda-ks.cfg ks.cfg 
 

然后修改isolinux下的isolinux.cfg 将default linux 改成default linux ks=cdrom:/isolinux/ks.cfg 
 

到此,所有需要的文件准备完毕,接着执行以下命令 
 

cd /home/rhel5u3/Server 
 

createrepo -g repodata/comps-rhel5-server-core.xml .           执行createrepo命令前应该先安装anaconda和anaconda-runtime 建议使用yum安装! 
 

如果你安装的是CentOS应该把comps-rhel5-server-core.xml改为comps.xml 最后到rhel5u3上层目录执行: 
 

mkisofs -o RHEL5U3.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T rhel5u3/ 
 

生成光盘iso文件! 
 

关于ks.cfg自动安装文件的更多参数请参考anaconda 
 



默认的内容是这样的: 
 

# Kickstart file automatically generated by anaconda. 
 

install 
 
cdrom   //从光盘安装 
 
key –skip //跳过SN 
 
lang en_US.UTF-8 //语言 
 
keyboard us //键盘 
 
network –device eth0 –bootproto dhcp //网络参数 
 
rootpw –iscrypted $1$bljn2gyE$iSEU9p3M1ZMrVBLX7BhRt. //root password 
 
firewall –enabled –port=22:tcp //可以改为disabled 禁用fw 
 
authconfig –enableshadow –enablemd5 //密码加密方式 
 
selinux –enforcing //可以改成disabled禁用selinux 
 
timezone Asia/Hong_Kong //时间 
 
bootloader –location=mbr –driveorder=sda 
 
# The following is the partition information you requested 
 
# Note that any partitions you deleted are not expressed 
 
# here so unless you clear all partitions first, this is 
 
# not guaranteed to work 
 
#clearpart –linux –drives=sda 
 
#part /boot –fstype ext3 –size=100 –ondisk=sda 
 
#part pv.2 –size=0 –grow –ondisk=sda 
 
#volgroup VolGroup00 –pesize=32768 pv.2 
 
#logvol /home –fstype ext3 –name=LogVol02 –vgname=VolGroup00 –size=4992 
 
#logvol swap –fstype swap –name=LogVol01 –vgname=VolGroup00 –size=512 –grow –maxsize=1024 
 
#logvol /tmp –fstype ext3 –name=LogVol03 –vgname=VolGroup00 –size=512 
 
#logvol /var –fstype ext3 –name=LogVol05 –vgname=VolGroup00 –size=2848 
 
#logvol /usr –fstype ext3 –name=LogVol04 –vgname=VolGroup00 –size=8000 
 
#logvol / –fstype ext3 –name=LogVol00 –vgname=VolGroup00 –size=2976 
 

%packages //这里开始由你所选rpm包会有所不同 
 
@editors 
 
@core 
 
@base 
 
@java 
 
fipscheck 
 
device-mapper-multipath 
 
-emacs-leim 
 
-psgml 
 
-emacspeak 
 
-rhn-check 
 
-dhclient 
 
-nano 
 
-sendmail 
 
-pcmciautils 
 
-yum 
 
-yum-updatesd 
 
-dhcpv6-client 
 
-firstboot-tui 
 
-NetworkManager 
 
-yum-rhn-plugin 
 
-irda-utils 
 
-ypbind 
 
-rhn-setup 
 
-yum-security 
 
-bluez-utils 
 


rootpw –iscrypted $1$bljn2gyE$iSEU9p3M1ZMrVBLX7BhRt. 这个肯定要去掉,这样可以自己在安装时设定密码 
 

尝试把network –device eth0 –bootproto dhcp去掉可在安装时还是不能设定网络参数,后来怀疑firewall –enabled –port=22:tcp和selinux –enforcing 也去掉了还是不行,最后把: 
 

lang en_US.UTF-8 //语言 
 
keyboard us //键盘 
 
network –device eth0 –bootproto dhcp //网络参数 
 
rootpw –iscrypted $1$bljn2gyE$iSEU9p3M1ZMrVBLX7BhRt. //root password 
 
firewall –enabled –port=22:tcp //可以改为disabled 禁用fw 
 
authconfig –enableshadow –enablemd5 //密码加密方式 
 
selinux –enforcing //可以改成disabled禁用selinux 
 
timezone Asia/Hong_Kong //时间



都去掉了,可还是不能设定网络,直接跳过了,不过选键盘和语言等参数时变成了文本模式,折腾了,有空参考一下anaconda吧,想在安装完系统过 安装yum和禁用一些服务!