从这一节开始,就开始学习RH134的内容了。
首先来看看KickStart。 KickStart类似windows的WDS,一般用来做大规模的无人值守系统安装。
下面这篇博文虽然是针对RHEL 6的,有个别命令在7.0已经不适合,不过基本概念和架构说的很清楚。
http://www.cnblogs.com/mchina/p/centos-pxe-kickstart-auto-install-os.html
基本结构如下所示
基本流程:
PXE Client 发送DHCP请求,从DHCP那里获取 IP和TFTP的地址;
PXE Client 从TFTP那里下载对应的pxelinux.0引导程序
PXE Client 下载pxelinux.cfg里面的配置文件
PXE Client 下载 vimlinuz,initred.img 文件
PXE Client 从NFS或者FTP或者HTTP服务器上下载ks.cfg应答文件,自动安装系统
例如,下面演示一个基本的配置,配置过程如下
安装配置DHCP
安装配置TFTP
安装配置HTTP
安装配置Kickstart
测试
安装DHCP 服务, 拷贝一个配置文件的样本,然后可以根据这个样本进行修改。当然也可以直接从头写一个。
配好的DHCP文件如下所示,range指定ip地址的范围,next-server指定tftp服务器的地址,filename指定需要下载的文件名
重启,enable dhcp服务即可;
第二步,配置tftp服务器
安装
修改配置文件 /etc/xineted.d/tftp 文件, disable 改为no
然后拷贝pxelinux.0, initrd.img, vlinuz, boot.msg 到 /var/lib/tftpboot/目录,同时创建一个子目录 pxelinx.cfg, 在里面拷贝 isolinux.cfg,并改名为default
修改一下default 文件,他默认指向linux 标签
把 linux的标签修改一下,这里我们先不指定自动应答文件,仅仅指定安装路径
重启一下xinetd 这个服务
接下来配置 http 共享
安装
创建一个目录 iso,并挂载安装光盘,到时候客户端会访问 http://172.0.10.206/iso 来进行下载安装文件
修改一下 /etc/httpd/conf/httpd.conf 文件,添加以下记录,允许所有访问
重启http服务,测试一下
现在DHCP, TFTP, HTTP 都配置好了,随便新建一个虚拟机,从网络启动,开机自动获取IP,并且开始安装。注意前面的default文件里面,我仅仅指定了从网络启动,但是没有指定自动应答文件,所以这里会需要手动输入必要的信息!
这个界面和从光盘安装差不多
注意安装源是 http://172.0.10.206/iso
最后,来安装一下kickstart的配置工具,这个工具可以配置应答文件,以便实现无人值守安装
这里都是各种应答配置,如果没有输入合适的值,会在安装过程中提示用户输入
配置完成之后,把ks.cfg这个应答文件放在 /var/www/html/ 目录下
打开看看
在 %post 前面加入下列信息,可以从 /root/anaconda-ks.cfg 里面复制
如果我在default 文件里面添加一行信息,指定ks.cfg文件
然后把default 文件改改
创建一个新的虚拟机,启动之后直接进入自动安装,不需要在手动选择配置了
安装完自动重启进入登录界面,登录之后发现用户和yum源都已经配置好了。
实验成功!