210 lines
5.6 KiB
INI
Executable File
210 lines
5.6 KiB
INI
Executable File
# Kickstart file automatically generated by anaconda.
|
|
|
|
install
|
|
nfs --server=192.170.0.1 --dir=iso_nfs_dir
|
|
lang en_US.UTF-8
|
|
keyboard us
|
|
text
|
|
rootpw ossdbg1
|
|
firewall --disabled
|
|
authconfig --enableshadow --enablemd5
|
|
selinux --disabled
|
|
timezone --utc Asia/Shanghai
|
|
logging --host=192.170.0.1 --port=514 --level=debug
|
|
|
|
%include /tmp/part-include
|
|
zerombr
|
|
#bootloader --location=mbr --driveorder=sda
|
|
#bootloader_append_holder
|
|
#####reboot
|
|
|
|
|
|
# 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 --drives=sda --all
|
|
part /boot --fstype ext3 --size=400 --ondisk=sda
|
|
part biosboot --fstype=biosboot --size=1 --ondisk=sda
|
|
|
|
#LVM install
|
|
#end_part
|
|
|
|
volgroup vg_sys pv.01 --pesize=4096
|
|
volgroup cindervolumes pv.02 --pesize=4096
|
|
volgroup vg_docker pv.03 --pesize=4096
|
|
volgroup vg_data pv.04 --pesize=4096
|
|
logvol swap --fstype swap --vgname=vg_data --size=2000 --name=lv_swap
|
|
#lv_root
|
|
|
|
#lv_db
|
|
|
|
#lv_mongodb
|
|
|
|
#lv_glance_mount
|
|
|
|
#lv_nova
|
|
|
|
#vg_cinder
|
|
|
|
%packages --ignoremissing
|
|
@Core
|
|
glibc.i686
|
|
nss-softokn-freebl.i686
|
|
libgcc.i686
|
|
%end
|
|
|
|
%pre
|
|
#!/bin/sh
|
|
|
|
sleep 10
|
|
|
|
function lvm_clean()
|
|
{
|
|
#vg_rename
|
|
vgs_v_file=/tmp/vgs_v.txt
|
|
vgs -v > $vgs_v_file
|
|
lines=`cat $vgs_v_file |wc -l`
|
|
vg_name=`cat $vgs_v_file |awk '{print $1}'`
|
|
vg_name_arr=($vg_name)
|
|
vg_uuid=`cat $vgs_v_file |awk '{print $9}'`
|
|
vg_uuid_arr=($vg_uuid)
|
|
for (( i=1; i<$lines; i++ )); do
|
|
vgrename ${vg_uuid_arr[$i]} ${vg_name_arr[$i]}_$i
|
|
echo "vgrename ${vg_uuid_arr[$i]} ${vg_name_arr[$i]}_$i"
|
|
done
|
|
|
|
#remove lvs
|
|
lvscan_file=/tmp/lvscan.txt
|
|
lvscan > $lvscan_file
|
|
sed -i "s/'//g" $lvscan_file
|
|
lines=`cat $lvscan_file |wc -l`
|
|
lv_name=`cat $lvscan_file |awk '{print $2}'`
|
|
lv_name_arr=($lv_name)
|
|
for (( i=0; i<$lines; i++ )); do
|
|
lvchange -a n ${lv_name_arr[$i]}
|
|
lvremove ${lv_name_arr[$i]} -f
|
|
[[ `lvscan |grep -w "${lv_name_arr[$i]}"` == "" ]] && echo "lvchange -a n & lvremove ${lv_name_arr[$i]} success"
|
|
done
|
|
|
|
#remove vgs
|
|
vgs_file=/tmp/vgs.txt
|
|
vgs > $vgs_file
|
|
lines=`cat $vgs_file |wc -l`
|
|
vg_name=`cat $vgs_file |awk '{print $1}'`
|
|
vg_name_arr=($vg_name)
|
|
for (( i=1; i<$lines; i++ )); do
|
|
vgchange -a n ${vg_name_arr[$i]}
|
|
vgremove ${vg_name_arr[$i]} -f
|
|
[[ `vgs |grep -w "${vg_name_arr[$i]}"` == "" ]] && echo "vgchange -a n & vgremove ${vg_name_arr[$i]} success"
|
|
done
|
|
|
|
#remove pvs
|
|
pvs_file=/tmp/pvs.txt
|
|
pvs > $pvs_file
|
|
lines=`cat $pvs_file |wc -l`
|
|
pv_name=`cat $pvs_file |awk '{print $1}'`
|
|
pv_name_arr=($pv_name)
|
|
for (( i=1; i<$lines; i++ )); do
|
|
pvchange -a n ${pv_name_arr[$i]}
|
|
pvremove ${pv_name_arr[$i]} -f
|
|
[[ `pvs |grep -w "${pv_name_arr[$i]}"` == "" ]] && echo "pvchange -a n & pvremove ${pv_name_arr[$i]} success"
|
|
done
|
|
}
|
|
|
|
function part_clean()
|
|
{
|
|
disknamelist=sda
|
|
echo disknamelist=$disknamelist
|
|
disknamelist=`echo $disknamelist | sed "s/,/ /g"`
|
|
echo disknamelist=$disknamelist
|
|
disknamelist=($disknamelist)
|
|
for ((i=0;i<${#disknamelist[*]};i++))
|
|
do
|
|
echo i=$i
|
|
devname=`echo ${disknamelist[$i]}`
|
|
echo $devname
|
|
if [ -b /dev/$devname ];then
|
|
dev_part_list=""
|
|
dev_part_no=0
|
|
DEV_DISK=/dev/${devname}
|
|
dev_part_list=`ls /dev/${devname}[0-9] 2>/dev/null`
|
|
echo ${DEV_DISK} list: $dev_part_list
|
|
for j in $dev_part_list
|
|
do
|
|
if [[ -b $j ]]; then
|
|
dev_part_no="${j#*$devname}"
|
|
parted ${DEV_DISK} rm $dev_part_no -s
|
|
[ -b $j ] && echo "delete partion $j fail" || echo "delete partion $j success"
|
|
fi
|
|
done
|
|
fi
|
|
done
|
|
dev_list_last=`ls /dev/sd*`
|
|
echo dev_list_last=$dev_list_last
|
|
}
|
|
lvm_clean
|
|
part_clean
|
|
|
|
echo "#partitioning schem e generated in %pre for 2 drives" > /tmp/part-include
|
|
echo "bootloader --location=mbr --boot-drive=sda --driveorder=sda" >> /tmp/part-include
|
|
echo "clearpart --drives=sda --all" >> /tmp/part-include
|
|
%end
|
|
|
|
%post --nochroot
|
|
#!/bin/bash
|
|
|
|
INSTALL_SRC_ROOT=/mnt/isodir
|
|
LOCAL_DISK_ROOT=/mnt/sysimage
|
|
OS_INSTALL_SRC=$INSTALL_SRC_ROOT/os_install
|
|
OS_INSTALL_DST=$LOCAL_DISK_ROOT/home/os_install
|
|
OS_ISO_SRC=$INSTALL_SRC_ROOT/os_iso
|
|
OS_ISO_MOUNT_SRC=$INSTALL_SRC_ROOT/os_mount_iso
|
|
|
|
mkdir -p $OS_INSTALL_DST
|
|
#挂载源目录
|
|
NFS_SERVER_ADDRESS=192.170.0.1
|
|
[ ! -d $OS_INSTALL_SRC ] && { mkdir -p $OS_INSTALL_SRC; }
|
|
mount -o nolock $NFS_SERVER_ADDRESS:/home/install_share/macaddr $OS_INSTALL_SRC
|
|
|
|
cp -f ${OS_INSTALL_SRC}/os.json ${OS_INSTALL_DST}/
|
|
cp -rf ${OS_INSTALL_SRC}/usrdata ${OS_INSTALL_DST}/
|
|
|
|
umount $OS_INSTALL_SRC
|
|
%end
|
|
|
|
%post
|
|
#!/bin/bash
|
|
|
|
#change network name and add vlan configuration
|
|
tmpline=`uuidgen`
|
|
tmpline=`echo $tmpline|tr -d '-'`
|
|
echo "$tmpline"> /etc/hostname
|
|
|
|
mkdir -p /mnt/huge_1GB
|
|
#fstab_hugetlbfs_place_holder
|
|
|
|
#lv_glance_nomount
|
|
#end lv_glance_nomount
|
|
|
|
#lv_provider_nomount
|
|
#end lv_provider_nomount
|
|
|
|
ssh-keygen -t rsa -P '' -f /root/.ssh/id_rsa
|
|
chmod 600 /root/.ssh/authorized_keys
|
|
cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
|
|
|
|
REPO_ROUTE=/etc/yum.repos.d
|
|
[ ! -d ${REPO_ROUTE} ] && { mkdir -p ${REPO_ROUTE}; echo "create ${REPO_ROUTE}" >> /home/os_install/usrdata/pxe_install.log; }
|
|
|
|
|
|
#nic fix
|
|
NIC_CFG=/home/os_install/usrdata/nic_net_cfg.sh
|
|
[ -e ${NIC_CFG} ] && { chmod +x ${NIC_CFG}; ${NIC_CFG}; echo "excute ${NIC_CFG}" >> /home/os_install/usrdata/pxe_install.log; }
|
|
|
|
#clear db_lv
|
|
[ -d /var/lib/mysql ] && { rm -rf /var/lib/mysql/*; echo "rm -rf /var/lib/mysql/*" >> /home/os_install/usrdata/pxe_install.log; }
|
|
|
|
sleep 30
|
|
%end
|