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. 记一道国际赛CTF web题

    这是一篇关于打d3ctf坐牢,无奈去打国际赛的题解. TAMUCTF [Blackbox] 首先打开页面,然后发现一个登陆框 刚开始最先想到就是弱口令登陆,尝试几个后发现登陆不进去. 之后我就换了一个 ...

  2. AspNetCoreRateLimit应用于MVC项目求助

    AspNetCoreRateLimit应用于MVC项目求助 前言 之前发过一篇文章: .NET Core WebApi接口ip限流实践 - 妙妙屋(zy) - 博客园 (cnblogs.com) 然后 ...

  3. 【Linux】文件及用户组合权限管理

    第二周1.显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录 ls -a /etc/[^[:alpha:]][:alpha:]* 2.复制/etc目录下所有以p开头 ...

  4. Keepalived 高可用

    Keepalived 高可用 什么是高可用 一般是指2台机器启动着完全相同的业务系统,当有一台机器down机了,另外一台服务器就能快速的接管,对于访问的用户是无感知的. 高可用通常使用的软件 keep ...

  5. Docker入门与实战-Docker镜像的使用

    Docker入门与实战 二.Docker镜像的使用 1.获取镜像 ​ 命令:docker [image] pull image-name[:tag] ​ 说明: ​ name为镜像仓库名称,严格来说, ...

  6. 图数据库 NebulaGraph 的内存管理实践之 Memory Tracker

    数据库的内存管理是数据库内核设计中的重要模块,内存的可度量.可管控是数据库稳定性的重要保障.同样的,内存管理对图数据库 NebulaGraph 也至关重要. 图数据库的多度关联查询特性,往往使图数据库 ...

  7. linux中使用jenkins自动部署前端工程

    1.去年在自己的服务器上安装了jenkins,说用来自己研究一下jenkins自动化部署前端项目,jenkins安装好了,可是一直没管,最近终于研究了一下使用jenkins自动化部署,以此记录下来. ...

  8. 计算机网络 ACL和ANT

    目录 一.ACL概况 二.ACL工作过程 三.ACL实验 四.ANT概况 五.ANT工作过程 六.ANT实验 一.ACL概况 概念:主要是对报文进行区分,路由器会对报文进行检查,查看是否符合通过标准或 ...

  9. 洛谷 P8742题解

    简单版(P2347)传送门 原题传送门 有一道类似的题目(P2347),先扯一扯~ 1.P2347 题目分析 动态规划入门题(01背包可行性问题)~ 我们设 \(dp_j\) 为能否用砝码称出 \(j ...

  10. 如何同步更新 Github 上 Fork 的项目?

    Github Fork 过程概述 在 Github 上有很多优秀的开源项目,相信每一位热衷于技术的朋友都会在 Github 上 Fork 一些感兴趣的项目,然后在本地修改并提交.本文以 Galaxy ...