一、实验目标:
1. 通过网络为客户机(裸机)安装RHEL 6.5操作系统 2. 为装好的客户机自动配置YUM、安装并启用httpd网站服务 3. 配置 kickstart 无人值守安装
二、案例环境准备
1. PXE 服务器 操作系统:RHEL 6.5 主机名:pxesvr.xxx.com IP地址:192.168.4.1/24 —— 关闭 iptables 防火墙、SELinux防护机制 2. PXE 客户机 新建一台RHEL6虚拟机(裸机) 内存:1GB 硬盘:20GB 光盘:无 !!!! 注意:客户机与服务器应在同一物理网段,并排除其他DHCP服务器的干扰
三、搭建PXE装机服务器
1. 准备RHEL 6.5安装源(以YUM源的方式提供)
[root@pxesvr ~]# yum -y install vsftpd //。。。安装FTP服务器 [root@pxesvr ~]# service vsftpd restart //启动 vsftpd 服务 [root@pxesvr ~]# chkconfig vsftpd on //设置 vsftpd 服务开机自运行 [root@pxesvr ~]# cp -rf /misc/cd/* /var/ftp/rhel6/ //拷贝RHEL6.4光盘中的所有文档 [root@pxesvr ~]# vim /etc/yum.repos.d/rhel6.repo //调整本机的YUM仓库设置,以便测试 [rhel-6.4] name=RHEL 6.5 baseurl=ftp://192.168.4.1/rhel6 enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release [root@pxesvr ~]# yum repolist //确保此YUM源可用
2. 启用DHCP服务
[root@pxesvr ~]# yum -y install dhcp //安装 dhcp 服务程序 [root@pxesvr ~]# vim /etc/dhcp/dhcpd.conf option domain-name "xxx.com"; option domain-name-servers 192.168.4.1; default-lease-time 7200; max-lease-time 14400; subnet 192.168.4.0 netmask 255.255.255.0 { range 192.168.4.100 192.168.4.200; option routers 192.168.4.254; next-server 192.168.4.1; #//TFTP引导服务器的地址 filename "pxelinux.0"; #//网卡引导文件名 } [root@pxesvr ~]# service dhcpd restart //启动 dhcpd 服务 [root@pxesvr ~]#chkconfig dhcpd on //设置开机自动启动 [root@pxesvr ~]# netstat -anptu | grep dhcpd //查看监听状态
3. 启用TFTP服务,并提供内核、引导程序
[root@pxesvr ~]# yum -y install tftp-server //安装 TFTP 服务器程序 [root@pxesvr ~]# chkconfig tftp on //将临时服务 tftp 设为启用 [root@pxesvr ~]# service xinetd restart //启用 xinetd 超级服务 [root@pxesvr ~]# netstat -anptu | grep xinetd //查看监听状态 [root@pxesvr ~]# chkconfig xinetd on //设置xinetd服务开机自运行 [root@pxesvr ~]# yum -y install syslinux [root@pxesvr ~]cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ //拷贝引导Linux客户机的网卡启动文件 [root@pxesvr ~]# cd /var/ftp/rhel6/p_w_picpaths/pxeboot/ //拷贝引导RHEL6客户机的内核和初始化镜像 [root@pxesvr pxeboot]# cp vmlinuz initrd.img /var/lib/tftpboot/ [root@pxesvr pxeboot]# ls /var/lib/tftpboot/ //确认 TFTP 根目录下部署的文档 [root@pxesvr ~]# mkdir /var/lib/tftpboot/pxelinux.cfg //创建启动配置目录 [root@ pxesvr ~]# cp /var/ftp/rhel6/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
四:配置 kickstart 无人值守安装
1. 准备应答文件
找一台已装好的RHEL 6.5 模板客户机(本例中可选 PXE 服务器本机),
通过 system-config-kickstart 工具创建 ks-el6.cfg 应答文件
[root@pxesvr ~]# yum -y install system-config-kickstart
[root@pxesvr ~]# system-config-kickstart //在图形桌面下运行
!!!! 打开 /root/anaconda-ks.cfg 文件,作为应答文件模板
!!!! 基本配置:指定默认语言、时区、根口令(123456)
!!!! 安装方式:新安装、FTP安装(192.168.4.6、/rhel6)
!!!! 分区信息:清除主引导记录、删除所有现存分区、初始化磁盘标签、/boot 200MB、SWAP 2GB、/ 剩余空间
!!!! 网络配置:第一块网卡DHCP自动获取
!!!! 防火墙配置:禁用SELinux、禁用防火墙
!!!! 软件包选择:不安装图形桌面
!!!! 安装后脚本:从 pxesvr 自动下载并部署 YUM 客户端配置、安装并启动 httpd 网站服务
rm -rf /etc/yum.repos.d/*
wget ftp://192.168.4.6/rhel6.repo -O /etc/yum.repos.d/rhel6.repo
yum clean all
yum -y install httpd
/etc/init.d/httpd start
chkconfig httpd on
!!!! 经上述调整后,另存为应答文件 /var/ftp/pxe/ks-el6.cfg
2. 在 PXE 服务器上部署应答文件、为客户机准备的YUM配置
[root@pxesvr~#cp /etc/yum.repos.d/rhel6.repo /var/ftp/pxe/ [root@pxesvr ~]# vim /var/lib/tftpboot/pxelinux.cfg/default //修改引导配置文件 default linux #//默认从哪个标签引导系统 prompt 1 #//是否交互式安装 timeout 600 #//进入默认系统的等待超时(单位:1/10秒) label linux #//定义名为linux的标签 kernel vmlinuz #//选择此标签时,需要加载的内核文件 append initrd=initrd.img #//加载内核文件时附加的参数 append ks=ftp://192.168.4.6/pub/pxe/ks-initrd=initrd.img #//下载并启用自动应答文件 [root@pxesvr ~]#cp /var/ftp/pub/pxe/rhel6.repo [root@pxesvr ~]# ls /var/ftp/pub/pxe //确认部署结果 ks-el6.cfg pub rhel6 rhel6.repo
3. 启动一台裸客户机(新建虚拟机),测试无人值守安装
!!!! 安装设置过程会自动应答,免手工交互 !!!! 等待客户机系统安装完成
4. 检查装好的客户机,确认 POST 脚本设置结果
[root@pc100 ~]# ifconfig eth0 | grep "inet addr" //查看自动配置iP地址 [root@pc100 ~]# chkconfig --list httpd //查看Web服务 [root@pc100 ~]# yum -y install dhcp //确保可yum安装软件包
五、实验总结:
可以配置DNS服务为配置的主机分配主机名以及域名解析(配置可以参考上篇DNS) 各服务一定先验证是否启动以及能否提供服务 再次强调一定要关闭防火墙、selinux tftp服务路径下提供的配置文件一定要放正确
#########################################################