实验环境:vmware虚拟机一台用于作为kickstart服务器,一台虚拟机裸机(本文选择两块硬盘),用于client测试。
软件需求:NFS或http, TFTP, DHCP, cdrom(linux系统镜像),本文使用的是linux centos6.5,镜像全名是:CentOS-6.5-x86_64-bin-DVD1.iso ,请确认可以使用此镜像安装系统系统即可,用live版的不行。
以下配置均在kickstart服务器端。
开始安装:
一、挂在镜像,仅用于拷贝镜像文件到服务器:
1. 虚拟机上可以直接把物理机硬盘上的镜像设置上即可,如下图:
虚拟机默认已经把光盘挂在到/media/CentOS_6.5_Final下。
2. 拷贝镜像内的文件到服务器上
[root@lw-02 ~]# mkdir -p /kickstart/centosinstall #目录可以自定义 [root@lw-02 ~]# nohup cp �Ca /media/CentOS_6.5_Final /kickstart/centosinstall & #nohup &指在后台拷贝
二、安装软件包
关键包:
yum install nfs* tftp* dhcp* syslinux
kickstart图像配置软件包:
yum install system-config-kickstart (推荐安装)
2.1 配置tftp服务器
创建tftp目录,默认是在/var/lib/tftpboot空目录
[root@lw-02 ~]# mkdir /kisckstart/tftpboot #可以是任意位置,配置文件中指定即可
# 拷贝initrd.img,vmlinuz到tftpboot下:
[root@lw-02 tftpboot]# cp /media/CentOS_6.5_Final/images/pxeboot/{initrd.img,vmlinuz} .
# 找到pxelinux.0文件,并拷贝到tftpboot下,syslinux软件会生成此文件:
[root@lw-02 tftpboot]# find / -name pxelinux.0 /usr/share/syslinux/pxelinux.0 [root@lw-02 tftpboot]# cp /usr/share/syslinux/pxelinux.0 .
# 创建pxelinux.cfg目录
[root@lw-02 tftpboot]# mkdir pxelinux.cfg
# 拷贝isolinux.cfg文件到pxelinux.cfg下并重命名为default
[root@lw-02 pxelinux.cfg]# cp /media/CentOS_6.5_Final/isolinux/isolinux.cfg /kickstart/tftpboot/pxelinux.cfg/default
2.1.2 修改/pxelinux.cfg/default文件:
配置简单说明:
default centos6.5 #默认pxe自动安装此标签下的系统即下面我们自定义的。
prompt 1 #安装时提示选择标签,为0 不显示
label centos6.5 #我们需要自动安装的centos系统,“ks=”指定系统路径,我采用的是NFS服务器,ip为nfs服务器ip。下文将配置NFS服务器,append后面参数必须在一行。如果你网速较好的话也可以指定某些网站上的web路径。
ps.其它按默认就行,也可参照我的
2.1.3 [root@lw-02 ~]# vi /etc/xinetd.d/tftp
到此,TFTP服务器搭建完成。
2.2 NFS服务器配置:
[root@lw-02 tftpboot]# cat /etc/exports /kickstart/centosinstall *(rw,sync)
/etc/exports 如果不存在,请确认NFS服务器所需软件包是否安装齐全。
2.3 DHCP服务器配置:
最简单的dhcp配置,供参考。
[root@lw-02 ~]# cat /etc/dhcp/dhcpd.conf ddns-update-style interim; ignore client-updates; next-server 192.168.2.11; #dhcp服务器IP filename "pxelinux.0"; allow booting; allow bootp; subnet 192.168.2.0 netmask 255.255.255.0 { #网段掩码 # --- default gateway option routers 192.168.2.1; #路由 option subnet-mask 255.255.255.0; range dynamic-bootp 192.168.2.100 192.168.2.200; #dhcp地址池 #host ns { #定义指定mac对应固定IP #hardware ethernet 00:1a:a0:33:11:00; #fixd-address 192.168.2.188;} }
2.4 文件ks.cfg配置:
TFTP服务器指定了ks=nfs:192.168.2.11:/kickstart/centosinstall/ks.cfg 路径,ks.cfg文件配置了自动化安装过程中硬盘分区,各分区目录大小,需要安装的软件包等等。所以建议自定义适用于自己公司服务器配置文件。
本文以最基本简单的配置:
[root@lw-02 centosinstall]# cat ks.cfg install # Use text mode install text nfs --server=192.168.2.11 --dir=/kickstart/centosinstall rootpw --iscrypted $1$boF4.7d5$ulEQTxqdUJ1JkwySjFDoZ. # System authorization information auth --useshadow --passalgo=sha512 # Run the Setup Agent on first boot firstboot --enable # System keyboard keyboard us # System language lang zh_CN firewall --disabled xconfig --startxonboot # SELinux configuration selinux --disabled # Installation logging level logging --level=info # Reboot after installation reboot # System timezone timezone Asia/Shanghai # System bootloader configuration bootloader --append="rhgb quiet" --location=mbr --driveorder="sda" # Clear the Master Boot Record zerombr # Partition clearing information clearpart --all --initlabel --drives=sda,sdb # Disk partitioning information part /boot --fstype="ext4" --ondisk=sda --size=200 #/boot目录200M,sda part / --fstype="ext4" --grow --ondisk=sda --size=1 #/根目录剩余磁盘,sda part swap --fstype="swap" --ondisk=sda --size=1024 #swap虚拟内存,sda part /vol --fstype="ext4" --grow --ondisk=sdb --size=1 #/vol目录,sdb %packages @base @chinese-support @core %end
ps:安装配置文件其它服务器上一般都有,文件是/root/anaconda-ks.cfg,我们可以拷贝到centosinstall目录下再进行修改,来定制企业服务器特定的安装配置文件。
2.5 开启服务,建议设置成开机自启:
[root@lw-02 ~]# /etc/init.d/nfs start [root@lw-02 ~]# /etc/init.d/dhcpd start [root@lw-02 ~]# /etc/init.d/xinetd start
注:关闭防火墙、selinux
至此,所有配置均已完成。下面打开虚拟机测试:
三、测试
由于是最小化安装的,启动级别默认init5,需要Ctrl+Alt+F1进入文本模式,也可以在ks.cfg进行设置。
四、图形配置ks.cfg
图形软件包:yum install system-config-kickstart
[root@lw-02 Desktop]# system-config-kickstart
参考资料:
kickstart配置文件详解:http://blog.chinaunix.net/uid-17240700-id-2813881.html
也有免费详细的视频教程:http://edu.51cto.com/lesson/id-47791.html