基于PXE自动化安装centos7系统


一、实验目的

通过PXE安装centos7,了解dhcp服务器的搭建,TFTP服务器的搭建,以及安装菜单界面的制作

二、实验环境

一台主机负责搭建DHCP服务器,HTTPD服务器,以及TFTP服务器(1个网卡,仅主机)

一台测试机(1个网卡,仅主机)

关闭VMware中仅主机的dhcp服务

三、实验步骤

1、安装相应的软件

yum install httpd      yum install dhcp   yum install tftp-server    yum install  syslinux (前三个都是搭建服务器所必须的,第四个中含有pxelinux.0文件)

2、准备yum源

建立文件目录结构

 

 

将光盘挂载对应的文件夹,sr0是7版本的光盘,对应centos7的文件夹,sr1对应centos6的文件夹。挂载完成后,启动httpd服务,可网页访问

 

 3、制作kickstart应答文件

1)在/var/www/html中建立文件夹用来存放ks文件  mkdir /var/www/html/ksdir

在之前讲过用图形化工具system-config-kickstart制作应答文件,现在用原有系统安装完成后生成的anaconda-ks.cfg文件,复制加以修改,生成新的ks文件。自动化安装需要有最小安装和桌面安装的选择,所以需要制作两个ks文件,分别是ks7-mini.cfg和ks7-desk.cfg

 2)桌面安装ks7-desk.cfg文件的修改制作

a、cdroom 改成url路径,路径就是准备好的yum源

b、graphical换成text  字符界面只能速度更快

c、selinux和防火墙的禁用,以及安装完成后重启

d、网卡名改为eth0

e、修改内核参数,加上net.ifnames=0,同时注释掉下面出现的bootloader

f、清理分区 clean all 以及mbr分区

g、然后是安装包的选择,可以默认的就是桌面安装,至于包下面的脚本可以全部删掉

 

 

 

 3)最小安装ks7-mini.cfg文件的修改制作

基本和上述一样,只是在包的选择时,不选包就好了

 

 检查ks文件格式是否正确,有专门的命令ksvalidator 

 

 

 

4、配置dhcp服务

1)打开dhcp服务配置文件/etc/dhcp/dhcpd.conf,可以看见里面全是空的,只有几行注释,但是给了范例文件,将所给的范例文件拷过来覆盖当前的dhcp配置文件,再加以修改就好了

 

 2)修改配置文件

a、根据所给的例子修改ip地址池,子网掩码,ip范围,以及网关

 

 b、修改DNS,域名,租期等信息

 

 c、前面的dhcp配置可以实现ip的分配,但是还不够。dhcp配置还要指明引导文件的名称,以及提供引导文件的服务器(TFTP服务器)的地址。被忘了分号;

 

 重新启动dhcp服务   systemctl restart dhcpd

 

5、tftp服务器及相关的文件准备

1)tftp服务器的下载路径都在/var/lib/tftpboot/下,所以相关的文件都要放到这个文件目录下,安装的时候才能找到。

首先将之前安装的syslinux中的pxelinux.0和menu.c32拷到 /var/lib/tftpboot/下

 

然后是光盘自身提供的文件,isolinux文件夹下的vmlinuz initrd.img 和isolinux.cfg 注意isolinux.cfg需要放到tftpboot目录下的一个独立文件夹pexlinux.cfg下,并改名为default

用到的命令如下

mkdir /var/lib/tftpboot/pxelinux.cfg/
cp /usr/share/syslinux/{pxelinux.0,menu.c32} /var/lib/tftpboot/
cp /misc/cd/isolinux/{vmlinuz,initrd.img} /var/lib/tftpboot/
cp /misc/cd/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
文件目录如下:

 

 将tftp五福设置成开机启动  systemctl enable tftp

6、准备启动菜单
这个里面只有3个标签一个是最小化安装,一个是桌面安装,还有一个是60s没选择的话默认本地启动

 

 

7、测试安装
在测试之前,有两项需要注意,一个是将服务设置成开机启动
systemctl enable dhcpd
systemctl enable tftp
systemctl enable httpd

另一个就是应答文件的权限   chmod +r       

新建一个虚拟机,开始测试(一张网卡,NAT模式  200g硬盘 内存2G   不需要插光盘)

开机启动后,选择菜单弹出。

 

 选择最小安装后就不用管了,系统会自动化安装。实验完成

 

 

 

 

 

 

 

注意:我这只是设置了centos7的安装,如果想在安装选择界面中支持centos6的安装,在增加以下几个步骤

1、centos6应答文件(kickstart文件)的制作    ks6-mini.cfg

2、在tftp服务器的路径下,分别建立centos7和centos6的目录,其中vmlinuz  initrd.img分别来自各自对应光盘,目录结构如下

 

 3、准备启动菜单时把6也写进去

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM