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