PXE高效批量网络装机

一.PXE简要介绍

PXE 的全称是 preboot execute environment它其实是Intel在很久以前提出来的一项用于通过网络来引导系统的标准。允许客户机通过网络从远程服务器上下载引导镜像,并加载安装文件或者整个操作系统。

pxe是通过网卡引导启动

单机: 光驱加载 linux 镜像去安装操作系统,光驱里有一个小型的linux操作系统

将操作系统 安装进自己的硬盘

PXE 操作系统是外来的 设备的上操作系统, 进入到外来的操作系统后,将自己想要安装的操作系统类型,安装进硬盘

二.系统装机的三种引导方式

1.硬盘

2.光驱(U盘)

3.网络启动  pxe

三.搭建过程中所需要的服务

1.TFTP服务

TFTP(简单文件传输协议)内核和引导文件

是一种基于UDP协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于小型文件传输的应用场合。TFTP服务默认由xinetd服务进行管理,使用UDP69端口。

2.vsftp服务

安装系统镜像文件获取方式

可以使用http ftp等方式,ftp文件传输的一种。

3.syslinux服务

syslinux是一个功能强大的引导加载程序,而且兼容各种介质。它的目的是简化首次安装Linux的时间,并建立修护或其它特殊用途的启动盘。它的安装很简单,一旦安装syslinux好之后,sysLinux启动盘就可以引导各种基于DOS的工具,以及MS-DOS/Windows或者任何其它操作系统。

四.PXE的优点

1.规模化:同时装配多台服务器

2.自动化:安装系统、配置各种服务

3.远程实现:不需要光盘、U盘等安装介质

五.实验操作过程

1.安装dhcpd,vsftpd,syslinux,tftp-server 服务

2.将dhcp的配置文件模板复制到dhcp目录下,并编辑配置文件

[root@zxy11 ~]# cat /etc/dhcp/dhcpd.conf 
#
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.example                 //配置文件模板在此目录下
#   see dhcpd.conf(5) man page

[root@zxy11 ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf      //将模板文件覆盖掉配置文件
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y
[root@test15 ~]# vim /etc/dhcp/dhcpd.conf
subnet 192.168.240.0 netmask 255.255.255.0 {
  range 192.168.240.20 192.168.240.60;
  option routers 192.168.240.2;
#  next-server 192.168.240.11;    #指定tftp的服务器地址
#  filename "pxelinux.0";          #指定启动文件 
}

3.查找到tftp-server的配置文件,编辑配置文件将第14行yes改为no

并查找到pxelinux.0将其复制到站点

[root@zxy11 ~]#rpm -ql tftp-server 
主要文件:
#/etc/xinetd.d/tftp    //配置文件
#/var/lib/tftpboot    //站点
[root@zxy11 ~]#vim /etc/xinetd.d/tftp 
#14行改成no,启动服务
[root@zxy11 ~]#rpm -ql syslinux |grep pxelinux.0    //安装完成后找到该文件的地址
/usr/share/syslinux/gpxelinux.0
/usr/share/syslinux/pxelinux.0      //地址
[root@zxy11 ~]#cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/    //拷贝到站点文件里
[root@zxy11 ~]#rpm -ql vsftpd
/var/ftp

4.查找到/var/ftp/并切换到/var/ftp下建立文件夹centos7,并将光驱挂载到centos7上

切换到centos7目录下,将/images/pxeboot/下initrd.img和vmlinuz复制到站点

在站点下创建新的文件pxelinux.cfg/default,并编辑文件

挂载到/var/ftp/centos7的原因是:

在进行PXE引导时,将光盘挂载到/var/ftp/centos7的主要目的是为了提供CentOS 7的安装源。这样,PXE客户端在启动时可以从该安装源中获取CentOS 7的安装文件,从而完成系统的安装过程。
具体原因包括:
安装源提供:通过挂载光盘到/var/ftp/centos7,可以将光盘上的CentOS 7安装文件以FTP方式提供给PXE客户端。这样,PXE客户端在引导时就可以通过FTP协议从服务器上获取所需的安装文件,而不是依赖于本地光驱。
网络安装:PXE引导通常用于网络安装操作系统,而不是使用本地介质(如光盘或USB)。将光盘挂载到FTP服务器上,使得PXE客户端可以通过网络从服务器上获取安装文件,从而实现无人值守的自动化安装过程。
灵活性:通过挂载光盘到/var/ftp/centos7,可以方便地更新安装源或者添加其他软件包,以满足特定的需求。这种方式可以在安装过程中提供更多的选择和定制化。
总的来说,将光盘挂载到/var/ftp/centos7是为了提供PXE客户端所需的CentOS 7安装源,从而实现通过网络进行系统安装的功能。

[root@zxy11 ~]# mkdir centos7
[root@zxy11 ~]# mount /dev/sr0 /var/ftp/centos7/
[root@zxy11 ~]# ls
[root@zxy11 ~]# cd images/
[root@zxy11 ~]# ls
[root@zxy11 ~]# cd pxeboot/
[root@zxy11 ~]# cp initrd.img vmlinuz /var/lib/tftpboot/
[root@zxy11 ~]# cd /var/lib/tftpboot/
[root@zxy11 ~]# mkdir pxelinux.cfg
[root@zxy11 ~]# cd pxelinux.cfg/
[root@zxy11 ~]# vim default

default linux
prompt 1

label linux
        kernel vmlinuz
        append initrd=initrd.img method=ftp://192.168.240.11/centos7  ks=ftp://192.168.240.11/ks.cfg 

label linux text
        kernel vmlinuz
        append text initrd =initrd.img method=ftp://192.168.240.11/centos7

label linux rescue
        kernel vmlinuz
        append rescue initrd=initrd.img method=ftp://192.168.240.11/centos7
        

5.关闭防火墙开启服务

6.安装kickstart  (无人值守安装)

7.在应用程序中找到kickstart

8.修改基本配置

9.修改安装方法

10.修改引导装载程序选项

11.建立  /boot  分区, /swap   分区, /  分区

12.修改防火墙设置关闭防火墙

13.修改网络配置

14.输入安装后脚本,并保存

15.创建新的虚拟机,编辑虚拟机设置,将内存设置为2G以上,开启虚拟机

实验结果

  • 31
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值