这次是在没有外网yum仓库的情况下搭建内网yum仓库和无人值守pxe装机
额 表达能力不行大家之间看看把 有什么问题可以和我说说
我是之间发的脚本可以之间使用 ks.cfg文件在最后
#!/bin/bash
#filename: yumandpxe.sh
DI=/media/cdrom
DI2=/var/ftp/centos6
DE=/dev/null
DI3=/etc/yum.repos.d
DI4=/var/lib/tftpboot
/etc/init.d/iptables stop &>$DE
setenforce 0 &>/$DE
read -p "yum仓库源与pxe无人值守装机一键安装按y开始n取消(y|n)" yn
if [ $yn = n ]; then
exit 0
fi
umount /dev/sr0 &>/dev/null &>$DE
[ -e /media/cdrom ]
if [ $? -ne 0 ]; then
mkdir -p $DI &>$DE
echo "正在挂载光驱"
fi
mount /dev/sr0 /media/cdrom &>$DE
[ -e $DI2 ]
if [ $? -ne 0 ]; then
mkdir -p $DI2 &>$DE
fi
echo "正在拷贝文件中请稍等........."
cp -rfp $DI/* $DI2
echo "拷贝完成"
#安装vsftp服务
rpm -q vsftpd &>$DE
if [ $? -ne 0 ]
echo "vsftp服务没有安装....正在安装请稍等........"
rpm -ivh $DI/Packages/vsftpd-*
echo "vsftp服务安装成功,正在启动服务 "
/etc/init.d/vsftpd start
chkconfig vsftpd on
echo "启动成功"
fi
#=============================================#
read -p "请输入你的vsftp服务器的IP:" IP
mkdir -p $DI3/bak &>$DE
mv $DI3/* $DI3/bak &>$DE
echo -e "[base]\nname=centos6\nbaseurl=ftp://$IP/centos6\ngpgcheck=0\nenabled=1" > $DI3/ftp.repo &>$DE
echo "创建yum仓库缓存中....."
yum -y clean all &>$DE
yum makecache &>$DE
echo "内网yum仓库搭建完成"
#pxe装机开始
echo “pxe无人值守一键装机程序开始部署”
echo "正在安装程序请稍等。。。。。。。"
rpm -qa | grep "tftp-server" &>/dev/null
[ $? -ne 0 ] && yum -y install tftp-server
rpm -qa |grep dhcp-4* &>/dev/null
[ $? -ne 0 ] && yum -y install dhcp
rpm -qa | grep "syslinux" &>/dev/null
[ $? -ne 0 ] && yum -y install syslinux
echo "程序安装完成正在配置。。。。。。。"
sed -i '/wait/ s/yes/no/g' /etc/xinetd.d/tftp
echo "启动tftp服务"
/etc/init.d/xinetd start
chkconfig tftp on
echo "tftp服务启动成功"
cp $DI2/isolinux/isolinux.cfg $DI4/
cp $DI2/isolinux/initrd.img $DI4/
cp $DI2/isolinux/vmlinuz $DI4/
cp /usr/share/syslinux/pxelinux.0 $DI4/
chmod 644 $DI4/isolinux.cfg
sed -i '4,16d' $DI4/isolinux.cfg
sed -i 's/^#/ /g' $DI4/isolinux.cfg
sed -i 's/vesamenu.c32/linux/g' $DI4/isolinux.cfg
sed -i 's/1$/0/g' $DI4/isolinux.cfg
sed -i 's/label vesa/label text/g' $DI4/isolinux.cfg
sed -i 's/img$/img ks=ftp\:\/\/78.19.25.12\/ks.cfg/g' $DI4/isolinux.cfg
mkdir -p $DI4/pxelinux.cfg
mv $DI4/isolinux.cfg $DI4/pxelinux.cfg/default
cat /usr/share/doc/dhcp*/dhcpd.conf.sample > /etc/dhcp/dhcpd.conf
sed -i '11a subnet 78.19.25.0 netmask 255.255.255.0 {\n\trange 78.19.25.100 78.19.25.200;\n\toption routers 78.19.25.1;\n\tnext-server 78.19.25.12;\n\tfilename "pxelinux.0";\n}' /etc/dhcp/dhcpd.conf
echo "启动dhcpd服务"
/etc/init.d/dhcpd restart
echo "dhcpd启动成功"
echo "无人值守装机服务器配置完成"
嗯 完事了
下面是ks文件
如果要用的话把它保存到/var/ftp/里
#platform=x87, AMD64, 或 Intel EM64T
#version=DEVEL
# Firewall configuration
firewall --disabled
# Install OS instead of upgrade
install
# Use network installation
url --url="ftp://78.19.25.12/centos6"
# Root password
rootpw --iscrypted $1$ug./Wmcl$Vq/5HxGFnHMujIUske3ey.
# System authorization information
auth --useshadow --passalgo=sha512
# Use graphical install
graphical
firstboot --disable
# System keyboard
keyboard us
# System language
lang zh_CN
# SELinux configuration
selinux --disabled
# Installation logging level
logging --level=info
# Reboot after installation
reboot
# System timezone
timezone Africa/Abidjan
# Network information
network --bootproto=dhcp --device=eth0 --onboot=on
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part /boot --fstype="ext4" --size=200
part swap --fstype="swap" --size=2048
part / --fstype="ext4" --grow --size=1
%packages
@basic-desktop
sabayon-apply
tigervnc-server
xguest
%end
谢谢