资源描述
Linux一键安装定制
1、在VM安装linux系统
Linux要按照自己定制后的需求来安装,系统安装后安装anaconda、repodata、createrepo、mkisofs。
#yum -y install anaconda repodata createrepo mkisofs
2、生成packages.list所安装的RPM包文件清单(由于install.log文件在root目录,所以该操作在root目录进行)
#grep Installing install.log | sed "s/Installing //g" | sed "s/^.*://" > packages.list
3、建立定制Centos的源目录
#mkdir /disk
#mount /dev/cdrom /mnt
#cd /mnt
#tar -cf - . | ( cd /disk ; tar -xvpf - ) #复制光盘内容到disk文件下
#rm -f /disk/CentOS/* #先删除所有RPM包
4、通过脚本复制系统安装的包
#!/bin/bash
DEBUG=0
DVD_CD=/disk/CentOS
ALL_RPMS_DIR=/mnt/CentOS/
DVD_RPMS_DIR=$DVD_CD
packages_list=/root/packages.list
number_of_packages=`cat $packages_list | wc -l`
i=1
while [ $i -le $number_of_packages ] ; do
line=`head -n $i $packages_list | tail -n -1`
name=`echo $line | awk '{print $1}'`
version=`echo $line | awk '{print $3}' | cut -f 2 -d :`
if [ $DEBUG -eq "1" ] ; then
echo $i: $line
echo $name
echo $version
fi
if [ $DEBUG -eq "1" ] ; then
ls $ALL_RPMS_DIR/$name-$version*
if [ $? -ne 0 ] ; then
echo "cp $ALL_RPMS_DIR/$name$version* "
fi
else
echo "cp $ALL_RPMS_DIR/$name-$version* $DVD_RPMS_DIR/"
cp $ALL_RPMS_DIR/$name$version* $DVD_RPMS_DIR/
if [ $? -ne 0 ] ; then
echo "cp $ALL_RPMS_DIR/$name$version* "
cp $ALL_RPMS_DIR/$name* $DVD_RPMS_DIR/
fi
fi
i=`expr $i + 1`
done
将以上内容保存为copyrpms.sh
#chmod 775 copyrpms.sh
#./copyrpms.sh
经过一系列的复制就完成了你要定制的RPM包(在/disk/CentOS/目录下);
5、定制安装控制文件ks.cfg
一般方便可以直接由root下面的anaconda-ks.cfg修改
#cp anaconda-ks.cfg /disk/ks.cfg
样例内容如:
auth --useshadow --enablemd5
bootloader --location=mbr
zerombr
clearpart --all --initlabel
text
firewall --disabled
firstboot --disable
keyboard us
lang en_US
logging --level=info
cdrom
network --bootproto=dhcp --device=eth0 --onboot=on
reboot
rootpw --iscrypted $1$eoyvblim$/gpcbswhB9l7foJuWxJ1U.
selinux --disabled
timezone Asia/Shanghai
install
xconfig --defaultdesktop=GNOME --depth=24 --resolution=1280x800
%packages
@base-x
@base
@development-libs
@gnome-desktop
@system-tools
@admin-tools
@legacy-software-development
@openfabrics-enterprise-distribution
@office
@java-development
@development-tools
@x-software-development
@chinese-support
@gnome-software-development
@legacy-software-support
@editors
@kde-software-development
@graphical-internet
@kde-desktop
@text-internet
@graphics
@ruby
@dialup
@authoring-and-publishing
@emacs
@java
@engineering-and-scientific
6、修改isolinux.cfg文件,将/disk/isolinux/目录下的isolinux.cfg文件第一行default linux修改成default linux ks=cdrom:/ks.cfg
样例文件如:
default linux ks=cdrom:/ks.cfg
prompt 1
timeout 60
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
label linux
kernel vmlinuz
append initrd=initrd.img
label text
kernel vmlinuz
append initrd=initrd.img text
label ks
kernel vmlinuz
append ks initrd=initrd.img
label local
localboot 1
label memtest86
kernel memtest
append -
7、生成comps.xml
#cd /disk/
#createrepo -g repodata/comps.xml /disk/
到此以上定制任务已经完成。
8、制作IOS文件
#cd /disk/
#mkisofs -o DZCentOS_5.4.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T /disk/
/disk/ 目录下产生的DZCentOS_5.4.iso 生成的ISO文件。
再用winscp把ISO文件拷出来拿到虚拟机实验,如果OK那就没问题了!
展开阅读全文