PXE无人值守安装ubuntu22.04 desktop,fedora37,Redhat9.1-- 第一篇环境准备

Centos PXE无人值守部署服务器搭建–环境准备

使用centos 7作为部署服务器,支持无人值守安装ubuntu22.04,fedora37,Redhat9.1。

PXE协议详解:

PXE,预启动执行环境(Preboot eXecution Environment,PXE,也被称为预执行环境)提供了一种使用网络接口(Network Interface)启动计算机的机制。这种机制让计算机的启动可以不依赖本地数据存储设备(如硬盘)或本地已安装的操作系统。

PXE(Pre-boot Execution Environment)是由Intel设计的协议,它可以使计算机通过网络启动。协议分为client和server两端,支持工作站通过网络从远端服务器下载映像,并由此支持来自网络的操作系统的启动过程,其启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中并执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。

PXE工作原理

1.PXE client从自己的PXE网卡启动,向本网络中的DHCP服务器请求ip地址
2.DHCP服务器收到dhcp请求后,分配dhcp地址池中ip给PXE client
3.PXE client向本网络中的TFTP服务器索取bootstarp文件
4.PXE client取得bootstarp文件后之执行pxelinux.0文件引导,使用pxelinux环境来引导os安装程序。
5.PXE client然后读取pxelinux.cfg文件夹中的default(isolinux.cfg)引导文件,通过TFTP服务器加载内核vmlinuz和根文件系统(boot.msg,vesamenu.c32,initrd.img,splash.jpg),通过http服务器加载ks.cfg引导文件。
6.启动linux内核完成安装

PXE必要条件

1、pxe client必须支持pxe用户端功能,并且开机时选择网络启动,这样系统才能以网络的方式进入pxe启动程序
2、pxe服务器必须至少提供DHCP及TFTP的服务才行,且其中
DHCP服务器必须能够除未pxe client分配ip地址外,还需配置option67,引导文件的tftp地址(即pxelinux.0的文件位置)
TFTP服务器则为pxe client 提供bootloader 及 kernel 等重要文件下载服务
3、使用NFS/HTTP/FTP之一的服务器提供pxe client所需程序及软件来源等通讯协议,本次介绍使用的是**http** 

安装与配置DHCP服务

windows server配置,在option66和67分别填写tftp服务器ip地址和bootfile在tftp服务器的文件路径
windows dhcp

也可以使用linux的dhcp服务

1:安装dhcp服务
yum install -y dhcp
2:配置dhcp服务
vim /etc/dhcp/dhcpd.conf

# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.example
#   see dhcpd.conf(5) man page
#
subnet 192.168.60.0 netmask 255.255.255.0 {
    range 192.168.60.10 192.168.60.12;      ------->可分配的ip地址
    option subnet-mask 255.255.255.0;      --------->指定子网掩码
    default-lease-time 21600;          ----------->指定默认IP地址租用期限
    max-lease-time 43200;     -------->指定IP地址最长租用期限
    next-server 192.168.60.158;  --------->告诉客户端tftp服务器地址
    filename "pxelinux.0";       ------>告诉客户端从tftp根目录下载pxelinux.0文件
}
3:启动dhcp服务并查看端口
systemctl start dhcpd

安装与配置tftp服务

简单文件传输协议也称小型文件传输协议(Trivial File Transfer Protocol, TFTP),工作在UDP/69 端口,是一种于1981年在RFC 783中定义的简化的文件传输协议(FTP)。

1:安装tftp服务:
yum install -y tftp-server xinetd
2:修改默认配置文件
vim /etc/xinetd.d/tftp       
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
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

只需将disable原来的yes改为no,no表明tftp处于启用状态 ,yes表示tftp处于禁用状态
3:启动tftp服务和开机自启
systemctl restart xinetd
systemctl enable xinetd
systemctl restart tftp
systemctl enable tftp

配置http服务

下载apache服务并启动
yum install -y httpd && systemctl start httpd
开机自启动
systemctl enable httpd
备注:默认对外暴露的文件夹为/var/www/html/,可以在里面放os镜像或者配置文件(KS)

本地环境准备

1.关闭防火墙和临时关闭selinux:
systemctl stop firewalld && setenforce 0
2. 下载引导文件
wget http://archive.ubuntu.com/ubuntu/dists/focal/main/uefi/grub2-amd64/current/grubnetx64.efi.signed -O /var/lib/tftpboot/pxelinux.0
3. 新建grub文件夹
mkdir -p /var/lib/tftpboot/grub
touch /var/lib/tftpboot/grub/grub.cfg

到这里部署服务器的基本准备就做完了,下一篇再介绍ubuntu22.04的部署步骤
ubuntu -> autoinstall
fedora -> ks
redhat ->ks

参考文章:
https://blog.csdn.net/weixin_43529253/article/details/121940359
https://blog.csdn.net/supahero/article/details/115829836

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值