歡迎您光臨本站 註冊首頁

定製自已的CentOS5基於kickstart全自動安裝CD

←手機掃碼閱讀     火星人 @ 2014-03-03 , reply:0

定製自已的CentOS5基於kickstart全自動安裝CD

定製自已的CentOS5基於kickstart全自動安裝CD

原文來自http://blog.opvps.com/centos5-kickstart-auto-install/2010年09月11日
1.首先需要從官網www.centos.org下載完整的DVD光碟
2.首先自定義安裝一次,自已要裝那些軟體包定義好,然後從這個安好的系統中/root/install.log 中先生成你需要安裝的軟體列表,使用如下指令
cat /root/install.log | grep Installing | sed 『s/Installing //g』|sed 『s/^\+://g』 >/tmp/rpm.log
創建存放rpm包的目錄 mkdir -p /data/cdrom/CentOS
將CenOS55的ISO掛到/mnt下 mount -o loop CentOS-5.5-i386-bin-DVD.iso /mnt
把rpm.log中的軟體放到一個目錄 使用rpm.sh這個文件#!/bin/bash
DEBUG=0
LT_CD=/mnt
ALL_RPMS_DIR=/mnt/CentOS
LT_RPMS_DIR=/data/cdrom/CentOS
packages_list=/tmp/rpm.log
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* $LT_RPMS_DIR/」
cp $ALL_RPMS_DIR/$name-$version* $LT_RPMS_DIR/
# in case the copy failed
if [ $? -ne 0 ] ; then
echo 「cp $ALL_RPMS_DIR/$name-$version* 」
cp $ALL_RPMS_DIR/$name* $LT_RPMS_DIR/
fi
fi
i=`expr $i + 1`done
執行sh rpm.sh
就可以將所需要的包copy到/data/cdrom/CentOS下面了
複製光碟其它到/data/cdrom/CenOS
執行rsync -avpz –exclude=」CenOS」 /mnt/* /data/cdrom/
強調不用要cp命令 因為cp命令默認沒有複製」.」開頭隱藏文件 ISO中沒有.discinfo .treeinfo這二個文件,光碟是無法使用的,切記!我花了一上午的時間才發現這個問題
3.更新光碟軟體包結構cd /data/cdrom/CentOS
createrepo -g ../repodata/comps.xml .
4.設定為自動安裝模式
修改/data/cdrom/CentOS/isolinux/isolinux.cfg文件 改為如下
cat /data/cdrom/CentOS/isolinux/isolinux.cfg
default linux
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 ramdisk_size=8192 ks=cdrom:/ks.cfg
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 -
5.生成ks.cfg文件
cat /data/cdrom/CentOS/ks.cfg
install
#text
cdrom
lang zh_CN.UTF-8
keyboard us
network –device eth0 –bootproto static –ip 192.168.10.25 –netmask 255.255.255.0 –gateway 192.168.10.1 –nameserver 8.8.8.8 –hostname annv
rootpw annv.taobao.com ###root密碼為www.taobao.com
firewall –disabled ###停用防火牆
authconfig –enableshadow –enablemd5
selinux –disabled ###停用selinux
firstboot –disable ##停用firstboot
timezone Asia/Shanghai ###時區
###清空硬碟 設定boot為100M /分區為10GB 交換分區為2G 其它分給/opt
bootloader –location=mbr
clearpart –all
part /boot –fstype ext3 –size=100
part / –fstype ext3 –size=10240
part swap –size=2048
part /opt –fstype ext3 –size=100 –grow
skipx
%packages
@admin-tools
@base
@chinese-support
@core
@dialup
@editors
@system-tools
@text-internet
keyutils
kexec-tools
trousers
fipscheck
device-mapper-multipath
audit
#%post
%post –nochrootreboot ###裝完后自動重啟
6.生成ISO 把這個ISO放在/data下面
mkisofs -r -T -J -V 「CentOS」 -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o /data/CentOS5.5-i386.iso /data/cdrom/
至此全文完
《解決方案》

謝謝分享  樓主辛苦

[火星人 ] 定製自已的CentOS5基於kickstart全自動安裝CD已經有665次圍觀

http://coctec.com/docs/service/show-post-1353.html