Centos6的批量安装
建议在桌面环境配置kickstart,本机地址为192.168.100.128,把虚拟机的dhcp服务停了,虚拟光驱和物理光驱不要放系统镜像。
1. 安装DHCP
#yum install dhcp
#vi /etc/dhcp/dhcpd.conf
在下面添加如下
ddns-update-styleinterim;
ignoreclient-updates;
allowbooting;
allowbootp;
subnet192.168.100.0 netmask 255.255.255.0 { #ip段和网关的定义
range 192.168.100.150 192.168.100.200; #分配的IP段
option routers 192.168.100.128; #主机,是DHCP服务器
option subnet-mask 255.255.255.0; #网关
default-lease-time 21600; #默认的IP分配租约时间
max-lease-time 43200; #最大IP分配租约时间
next-server 192.168.100.128; #next-server一般用于存放初始启动文档的主机地址,这里是TFTP地址
filename "pxelinux.0"; #调用的文件,
}
#chkconfig dhcpd on
#service dhcpd start
2. 安装tftp和syslinux
#yum install syslinux tftp-server perl-Digest-SHA1 perl-Crypt-PasswdMD5
#vi /etc/xinetd.d/tftp
”disable = yes” 改成 “disable = no”
#chkconfig tftp on
#service xinetd restart
3. 安装apache(可以使用其他方式,如ftp,nfs…..)
#yum install httpd
#chkconfig httpd on
#service httpd start
如果这里报出一个什么类似于couldnot reliably determine the server’s fully qualified domain name ,using192.168.100.128 for ServerName
只要修改/etc/http/conf/http.conf中的ServerName,把前面的#去掉,改成ServerName localhost:80即可
4. 开方端口
#vi /etc/sysconfig/itpables
在已经开放了的22端口那一行紧接着添加下面几行
-A INPUT-m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT-m state --state NEW -m udp -p udp --dport 67 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 69 -jACCEPT
#serviceiptables restart
5. 配置tftp
#mkdir /var/lib/tftptoot/pxelinux.cfg
#cp /var/share/syslinux/pxelinux.0 /var/lib/tftpboot/
网上有的说把它放在刚才新建的pxelinux.cfg文件夹里面,如果这文件夹里面,在新建安装的时候会报错,tftp nofound
接着把光盘挂载到机器里面,以下的文件都是复制到tftpboot里,网上很多都是放到刚才新建的里面,导致后面装机的时候报错,找不到文件,如果为了更有保证,两边都放一份
#mkdir /var/www/html/centos6
#mount –tiso9660 /dev/sr0 /var/www/html/centos6
#cd /var/www/http/centos6
#cp initrd.img/var/lib/tftpboot/
#cp isolinux.cfg/var/lib/tftpboot/pxelinux.cfg/default #复制并改名
#cp vesamenu.c32/var/lib/tftpboot/
#cp ../pxeboot/vmlinuz /var/lib/tftpboot/
#cp ../pxeboot/initrd.img /var/lib/tftpboot/
#vi /var/lib/pxelinux.cfg/default
下面为我自己的内容
defaultlinux #这里的linux要跟下面的对应
prompt 0 #不用用户输入
timeout600
displayboot.msg
menubackground splash.jpg
menutitle Welcome to CentOS 6.3!
menucolor border 0 #ffffffff #00000000
menucolor sel 7 #ffffffff #ff000000
menucolor title 0 #ffffffff #00000000
menucolor tabmsg 0 #ffffffff #00000000
menucolor unsel 0 #ffffffff #00000000
menucolor hotsel 0 #ff000000 #ffffffff
menucolor hotkey 7 #ffffffff #ff000000
menucolor scrollbar 0 #ffffffff #00000000
labellinux #跟上面的linux对应
menu label ^Install or upgrade an existingsystem
menu default
kernel vmlinuz
appendks=http://192.168.100.128/ks.cfg initrd=initrd.img #添加这一行的ks,删掉文本以下的东西,我是用apache进行发布的,如果是用其他的方式,得改,ftp的要改为ks=ftp://ftp服务器IP/ks.cfg
#service xinetd restart
#yum install system-config-kickstart
# system-config-kickstart
更详细的说明可以看http://blog.sina.com.cn/s/blog_c118afe90101ewtl.html
进行到最后保存后会让你命名跟存放,可以指定直接放在/var/www/html/ks.cfg
#chmod 755 /var/www/html/ks.cfg
下面为我的配置文件
#vi /var/www/html/ks.cfg (这个ks.cfg就是上面指定的,无人值守安装的脚本)
#platform=x86,AMD64, or Intel EM64T
#version=DEVEL
#Firewall configuration 防火墙配置
firewall--enabled --ssh
#Install OS instead of upgrade
install
# Usenetwork installation以http的方式安装,centos6为我光盘挂载点
url--url="http://192.168.100.128/centos6"
# Rootpassword 设置root密码,是加过密的,
rootpw--iscrypted $1$MNiTyI0/$lp/.Id.Xo5kqjn2iv7V8R.
# Systemauthorization information 用MD5加密
auth --useshadow --passalgo=md5
# Usegraphical install
graphical
# Systemkeyboard
keyboardus
# Systemlanguage
langen_US
#SELinux configuration
selinux--enforcing
# Do notconfigure the X Window System不安装桌面
skipx
#Installation logging level
logging--level=info
# Rebootafter installation
reboot
# Systemtimezone
timezone--isUtc Asia/Chongqing
#Network information 选dhcp方式,网卡名为eth0
network --bootproto=dhcp --device=eth0 --onboot=on
# Systembootloader configuratio下面这几行都跟硬盘的划分有关
bootloader--location=mbr
# Clearthe Master Boot Record
zerombr
#Partition clearing information
clearpart--all --initlabel
# Diskpartitioning information
part/boot --fstype="ext4" --size=100
partswap --fstype="swap" --size=2000
part /--fstype="ext4" --grow --size=1
#下面的表示为选用的软件包,具体用可视化桌面比较清楚
%packages
@base
@core
%end
这里得注意,如果说想让系统自动帮你划分空间,那是不行的,安装的时候会停在划分空间的界面,建议在设定的时候建一个swap,一个/boot和/则可,而选安装包的时候,如果不选的话,是会在选包的时候停下了,所以在文本的最后添加
%packages
%end