PXE服务搭建

一、 什么是PXE

PXE是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP或MTFTP协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。

 

二、 PXE工作流程

1、 PXE Client从自己的PXE网卡启动,向本网络中的DHCP服务器索取IP;

2、 DHCP服务器返回分配给客户机的IP以及PXE文件的放置位置(该文件一般是放在一台TFTP服务器上);

3、 PXE Client向本网络中的TFTP服务器索取grubaa64.efi 文件;

4、 PXE Client取得grubaa64.efi 文件后之执行该文件;

5、 根据grubaa64.efi 的执行结果,通过TFTP服务器加载内核和文件系统 ;

6、 进入安装画面, 此时可以通过选择HTTP、FTP、NFS方式之一进行安装;

 

三、 安装依赖包

1、 配置前关闭系统防火墙

[root@localhost ~]# systemctl stop firewalld

[root@localhost ~]# systemctl disable firewalld

[root@localhost ~]# setenforce 0

2、 配置yum源并安装PXE依赖包

[root@localhost ~]#  yum -y install dhcp* tftp* xinetd http* rpcbind*

 

四、 配置DHCP服务

DHCP 代表动态主机配置协议Dynamic Host Configuration Protocol,它主要用于动态分配网络配置参数,如用于接口和服务的 IP 地址。在 PXE 环境中,DHCP 服务器允许客户端请求并自动获得一个 IP 地址来访问网络。

DHCP配置文件

[root@localhost ~]# vim /etc/dhcp/dhcpd.conf

default-lease-time 600;

max-lease-time 7200;

ddns-update-style none;

ignore client-updates;

subnet 10.93.20.0 netmask 255.255.255.0 {

range 10.93.20.100 10.93.20.200;

option routers 10.93.20.192;

option broadcast-address 10.93.20.255;

option subnet-mask 255.255.255.0;

option time-servers 10.93.20.192;

option domain-name-servers 10.93.20.192;

next-server 10.93.20.192;

filename "euler/grubaa64.efi";

}

[root@localhost ~]# systemctl restart dhcpd

五、 配置TFTP服务

TFTP配置文件

[root@localhost ~]# vim /etc/xinetd.d/tftp

service tftp

{

    socket_type             = dgram

    protocol                = udp

    wait                    = yes

    user                    = root

    server                  = /usr/sbin/in.tftpd

    server_args             = -s /var/lib/tftpboot

    disable                 = no

    per_source              = 11

    cps                     = 100 2

    flags                   = IPv4

}

[root@localhost ~]# systemctl restart tftp

[root@localhost ~]# systemctl restart xinetd

 

六、 配置PXE启动文件

[root@localhost ~]# mkdir –p /var/lib/tftpboot/euler

[root@localhost ~]#  cp -avf /mnt/EFI/BOOT/*  /var/lib/tftpboot/euler

[root@localhost ~]#  cp /mnt/images/pxeboot/vmlinuz  /var/lib/tftpboot/euler

[root@localhost ~]#  cp /mnt/images/pxeboot/initrd.img  /var/lib/tftpboot/euler

root@localhost ~]# ls /var/lib/tftpboot

root@localhost ~]# chmod –R 777 /var/lib/tftpboot

 

七、 配置Grub引导文件

[root@localhost ~]# vim /var/lib/tftpboot/grub.cfg

set default="1"

………………

set timeout=30

### END /etc/grub.d/00_header ###

search --no-floppy --set=root -l 'openEuler-2.0-SP8-aarch64'

### BEGIN /etc/grub.d/10_linux ###

menuentry 'Install EulerOS V2.0SP8 with text mode' --class red --class gnu-linux --class gnu --class os {

        linux euler/vmlinuz inst.ks=http://10.93.20.192/ks.cfg inst.repo=http://10.93.20.192/euler ro

        initrd euler/initrd.img

}

 

八、 配置KS文件

1、 编辑ks文件,修改如下字段

[root@localhost ~]# cp anaconda-ks.cfg /var/www/html/ks.cfg

[root@localhost ~]# vim /var/www/html/ks.cfg

#version=DEVEL

ignoredisk --only-use=sda

# System bootloader configuration

bootloader --location=mbr --boot-drive=sda

autopart --type=lvm

# Partition clearing information

clearpart --all --initlabel --drives=sda

# Use text mode install

# Use CDROM installation media

url --url=http://10.93.20.192/euler

# Keyboard layouts

2、 挂载镜像,并将内容拷贝到/var/www/html/euler目录中

[root@localhost ~]# mount EulerOS-2.0-SP8-aarch64-dvd.iso /mnt

[root@localhost ~]# cp –avf /mnt/*  /var/www/html/euler

[root@localhost ~]# chmod –R 777 /var/www/html/euler

九、 从PXE启动

1、 配置完成后重启服务

[root@localhost ~]# systemctl restart httpd.service

[root@localhost ~]# systemctl restart tftp.service

[root@localhost ~]# systemctl restart http.service

[root@localhost ~]# systemctl restart dhcpd.service

2、 通过web浏览器可正常访问ks文件和euler目录,从PXE启动即可正常安装

PXE服务器搭建--ARM的更多相关文章

  1. [PXE] Linux(centos6)中PXE 服务器搭建,PXE安装、启动及PXE理论详解

    [PXE] Linux(centos6)中PXE 服务器搭建,PXE安装.启动及PXE理论详解 本篇blog主要讲述了[PXE] linux(centos)PXE无盘服务器搭建,安装,启动及pxe协议 ...

  2. CentOS 7 (无盘安装)PXE服务器的搭建(失败求助版)

    折腾了一天半,PXE无盘服务器以暂时失败而告终. 基本原理 1. 首先客户端主机需要支持PXE,大部分主板都支持. 2. PXE服务器需要安装DHCP.TFTP.FTP服务. 3. DHCP服务用来给 ...

  3. 用系统为centos6的主机,搭建PXE服务器,实现批量安装centos6,7系统

    1. iptables -F setenforce 0 临时关掉selinux,清掉防火墙 永久生效更改配置文件:vim /etc/sysconfig/selinux chkconfig iptabl ...

  4. NFS服务器搭建-共享PC与ARM主板文件

    NFS服务器搭建-共享PC与ARM主板文件 在搭建好交叉编译环境之后需要实现目标板与宿主机的文件共享,在这里选择NFS,由于资料较多.需要注意的以下几点: 目标板与宿主机需要连接在同一个网段内. 宿主 ...

  5. 网络装机pxe服务器的配置过程

    网络装机pxe服务器的配置过程 背景: 针对于Linux运维工作中遇到的需要大批量安装Linux系统的情况,通过网络装机的方式实现无人值守安装Linux操作系统,现需要配置一台pxe服务器用于pxe批 ...

  6. Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核

    Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核 标签(空格分隔): Qemu ARM Linux 在上文<Qemu搭建ARM vexpress开发环 ...

  7. Qemu搭建ARM vexpress开发环境(一)

    Qemu搭建ARM vexpress开发环境(一) 标签(空格分隔): Qemu ARM Linux 嵌入式开发离不开硬件设备比如:开发板.外设等,但是如果只是想学习研究Linux内核,想学习Linu ...

  8. PythonScript_demo--搭建PXE服务器

    前言 是一个测试向的Demo,在实验环境中改改还是可以用的,有助理解PXE服务器的原理.可以结合PXE服务器原理细节来看,传送门:点这里 软件环境 系统 RHEL7 软件 Python 27 RHEL ...

  9. Git本地服务器搭建及使用详解

    Git本地服务器搭建及使用 Git是一款免费.开源的分布式版本控制系统.众所周知的Github便是基于Git的开源代码库以及版本控制系统,由于其远程托管服务仅对开源免费,所以搭建本地Git服务器也是个 ...

  10. ​Linux下的SVN服务器搭建

    ​Linux下的SVN服务器搭建 鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人 本文的目的,也就是想让后继之人在搭建svn服务器时不再犯错,不再被网上漫天的坑爹作品所坑害,故此总 ...

随机推荐

  1. Optional避免频繁判空的神器

    1. 创建Optional //创建空的 Optional Optional<Object> optional = Optional.empty(); //创建非空的 Optional 如 ...

  2. Jmeter小白使用攻略

    <Jmeter小白使用攻略> 一.主界面 二.如何测试一个接口

  3. Centos7.x jmeter + ant + jenkins接口自动化框架部署

    一.基础环境准备 1.jmeter安装(之前文章有介绍过) 2.ant安装 · 官网下载:https://ant.apache.org/bindownload.cgi · 上传服务器,执行 tar - ...

  4. 一文吃透Tomcat核心知识点

    架构 首先,看一下整个架构图.最全面的Java面试网站 接下来简单解释一下. Server:服务器.Tomcat 就是一个 Server 服务器. Service:在服务器中可以有多个 Service ...

  5. Vue使用:style动态给css中某样式赋值

    template中 <span class="successOrError" :style="{'--fontColor':"green"}&q ...

  6. 2022-05-08:给你一个下标从 0 开始的字符串数组 words 。每个字符串都只包含 小写英文字母 。words 中任意一个子串中,每个字母都至多只出现一次。 如果通过以下操作之一,我们可以

    2022-05-08:给你一个下标从 0 开始的字符串数组 words .每个字符串都只包含 小写英文字母 .words 中任意一个子串中,每个字母都至多只出现一次. 如果通过以下操作之一,我们可以从 ...

  7. el-table自适应列宽

    这里可对内容为文本的列进行自适应列宽 以下为 工具方法 /** * 使用span标签包裹内容,然后计算span的宽度 width: px * @param valArr */ function get ...

  8. openlayers Text字体大小设置

    今做一个app版的ol地图,发现区域太小显示拥挤,于是想把字体改小,看起来匀称点,于是盯紧了font属性使劲改 老是不听咋整呢?网上找大佬 于是找到了得到了各路大神鼎力相助 如: 赶紧跑去试试,原来这 ...

  9. 记录一些不知道哪里冒出来的 idea(可能已存在)

    2022/7/4 给定一张 \(n\) 个点的有权无向图和 \(m\) 个关键点,求其生成树满足每个点到离它最近的关键点的距离之和最小. 输出该生成树边权和. 加强一下: 给出一个 \(N\) 个点 ...

  10. Windows/Linux 下功能强大的桌面截图软件

    说到桌面截图软件,很多人首先想到的是 QQ 自带的截图,或者更高级功能更强大的 Snipaste 截图工具. 独立版本的 QQ 截图至少我目前没找到官方正式的下载链接,默认需要安装和打开 QQ 才能使 ...