PXE自动化安装系统

准备(以CentOS 7为例)

①关闭防火墙

②关闭selinux

③dhcp服务设置为静态IP

④安装软件包

http:充当yum源安装包仓库

tftp-server :在它的工作目录存在引导主机的工作文件

dhcp :地址分配

syslinx:辅助文件其中pxelinux.0引导系统,可以理解为grup的作用

system-config-kickstart:生成kickstart文件ks.cfg

制作流程

1)配置共享服务(http)

① 进入http工作目录

cd /var/www/html/
#

② 创建必须目录

mkdir -pv centos/7/os/x86_64/
#

③ 为这个目录挂载光盘

mount /dev/sr0 .

④ 启动http服务并开机自启动

systemctl start httpd
#
systemctl enable httpd
#

2)将前面我们制作的kickstart文件ks.cfg复制到http工作目录

cp /root/ks.cfg /var/www/html/
#

备注:测试下我们搭建的HTTP共享服务有效,在浏览器中输入你机器的ip地址如下

x.x.x.x/centos/7/os/x86_64

x.x.x.x/ks.cfg  查看ks.cfg文件是否能访问,要是不能访问看下权限

3)搭建dhcp服务

备注:虚拟机的话,使用仅主机模式,把vm软件虚拟网络编辑器--仅主机模式的dhcp去掉

① 编辑dhcp配置文件

vim /etc/dhcp/dhcpd.conf
#

image

image

② 开启dhcp服务并开机自启动

systemctl enabled dhcpd
systemctl start dhcpd

备注:如果出现如下图提示的错误,则是不在一个网段,重启网络服务也有这种提示

4)开启tftp-server服务,并把拷贝文件到它的工作目录

systemctl start tftp-server
#开启
cd /cd /var/lib/tftpboot/
#进入工作目录
cp /usr/share/syslinux/{pxelinux.0,menu.c32} .
#拷贝启动文件与背景插件
cp /misc/cd/isolinux/vmlinuz .
cp /misc/cd/isolinux/initrd.img .
#拷贝内核文件
mkdir pxelinux.cfg
#创建pxelinux.cfg目录
cp /misc/cd/isolinux/isolinux.cfg pxelinux.cfg/default
#将启动菜单复制到pxelinux.cfg目录下并改名为default

5)修改default文件

default menu.c32
timeout 600
 
menu title CentOS 7
 
label auto
  menu label ^Auto Install CentOS 7
  kernel vmlinuz
  append initrd=initrd.img ks=http://192.168.1.116/ks.cfg
 
label manual
  menu label Test this ^Manual install CentOS 7
  menu default
  kernel vmlinuz
  append initrd=initrd.img inst.repo=http://192.168.1.116/centos/7/os/x86_64/
 
 
label local
  menu label Boot from ^local drive
  localboot 0xffff

备注:tftpboot目录最终结果如图

clipboard

6)完成,找台主机进行测试,网卡启动-网络安装

CentOS 6和CentOS 7操作不一样的地方

1)在6上tftp-server服务器要依赖与xinetd服务

vim /etc/xinetd.d/tftp

启动xinetd服务

service xinetd start

2)带有pxelinux.0文件的包是如下这个

3)在修改菜单文件中

4)最终目录结构如图

image

其他的都一样的步骤

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/12660.html