11.2. 准备一个 UEFI HTTP 安装源
作为本地网络上服务器的管理员,您可以配置 HTTP 服务器,以便为网络中的其他系统启用 HTTP 引导和网络安装。
11.2.1. 网络安装概述 复制链接链接已复制到粘贴板!
网络安装允许您将 Red Hat Enterprise Linux 安装到可访问安装服务器的系统。网络安装至少需要两个系统:
- 服务器
- 运行 DHCP 服务器、HTTP、HTTPS、FTP 或 NFS 的服务器以及 PXE 引导情况下的TFTP 服务器。虽然每个服务器可以运行在不同的物理系统上,但本节中的流程假设单个系统正在运行所有服务器。
- 客户端
- 要安装 Red Hat Enterprise Linux 的系统。安装开始后,客户端会查询 DHCP 服务器,从 HTTP 或 TFTP 服务器接收引导文件,并从 HTTP、HTTPS、FTP 或者 NFS 服务器下载安装镜像。与其它安装方法不同,客户端不需要任何物理引导介质来启动安装。
要从网络引导客户端,请在固件中或客户端上的快速引导菜单中启用网络引导。在某些硬件上,从网络引导的选项可能被禁用了,或者不可用。
准备使用 HTTP 或 PXE 从网络安装 Red Hat Enterprise Linux 的工作流步骤如下:
流程
- 将安装 ISO 镜像或者安装树导出到 NFS、HTTPS、HTTP 或者 FTP 服务器中。
- 配置 HTTP 或 TFTP 服务器以及 DHCP 服务器,并在服务器上启动 HTTP 或 TFTP 服务。
- 引导客户端并开始安装。
您可以在以下网络引导协议之间进行选择:
- HTTP
- 如果您的客户端 UEFI 支持,红帽建议使用 HTTP 引导。HTTP 引导通常更加可靠。
- PXE (TFTP)
- 客户端系统更广泛地支持 PXE 引导,但通过此协议发送引导文件可能会很慢,并导致超时失败。
11.2.2. 为网络引导配置 DHCPv4 服务器 复制链接链接已复制到粘贴板!
在您的服务器上启用 DHCP 版本 4 (DHCPv4)服务,以便它可以提供网络引导功能。
先决条件
您通过 IPv4 协议准备网络安装。
对于 IPv6 ,请参阅 为网络引导配置 DHCPv6 服务器。
查找服务器的网络地址。
在以下示例中,服务器有一个具有此配置的网卡:
- IPv4 地址
- 192.168.124.2/24
- IPv4 网关
- 192.168.124.1
流程
安装 DHCP 服务器:
yum install dhcp-server
yum install dhcp-server
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 设置 DHCPv4 服务器。在
/etc/dhcp/dhcpd.conf
文件中输入以下配置。替换地址以匹配您的网卡。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 启动 DHCPv4 服务:
systemctl enable --now dhcpd
# systemctl enable --now dhcpd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.2.3. 为网络引导配置 DHCPv6 服务器 复制链接链接已复制到粘贴板!
在您的服务器上启用 DHCP 版本 6 (DHCPv4)服务,以便它可以提供网络引导功能。
先决条件
您通过 IPv6 协议准备网络安装。
对于 IPv4 ,请参阅 为网络引导配置 DHCPv4 服务器。
查找服务器的网络地址。
在以下示例中,服务器有一个具有此配置的网卡:
- IPv6 地址
- fd33:eb1b:9b36::2/64
- IPv6 网关
- fd33:eb1b:9b36::1
流程
安装 DHCP 服务器:
yum install dhcp-server
yum install dhcp-server
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 设置 DHCPv6 服务器。在
/etc/dhcp/dhcpd6.conf
文件中输入以下配置。替换地址以匹配您的网卡。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 启动 DHCPv6 服务:
systemctl enable --now dhcpd6
# systemctl enable --now dhcpd6
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果 DHCPv6 数据包被防火墙中的 RP 过滤器丢弃了,请检查其日志。如果日志包含
rpfilter_DROP
条目,请使用/etc/firewalld/firewalld.conf
文件中的以下配置禁用过滤器:IPv6_rpfilter=no
IPv6_rpfilter=no
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.2.4. 为 HTTP 引导配置 HTTP 服务器 复制链接链接已复制到粘贴板!
您必须在服务器上安装并启用 httpd
服务,以便服务器可以在网络上提供 HTTP 引导资源。
先决条件
查找服务器的网络地址。
在以下示例中,服务器有一个 IPv4 地址为
192.168.124.2
的网卡。
流程
安装 HTTP 服务器:
yum install httpd
# yum install httpd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建
/var/www/html/redhat/
目录:mkdir -p /var/www/html/redhat/
# mkdir -p /var/www/html/redhat/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 下载 RHEL DVD ISO 文件。请参阅 所有 Red Hat Enterprise Linux 下载。
为 ISO 文件创建一个挂载点:
mkdir -p /var/www/html/redhat/iso/
# mkdir -p /var/www/html/redhat/iso/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 挂载 ISO 文件:
mount -o loop,ro -t iso9660 path-to-RHEL-DVD.iso /var/www/html/redhat/iso
# mount -o loop,ro -t iso9660 path-to-RHEL-DVD.iso /var/www/html/redhat/iso
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将引导装载程序、内核和
initramfs
从挂载的 ISO 文件复制到 HTML 目录中:cp -r /var/www/html/redhat/iso/images /var/www/html/redhat/ cp -r /var/www/html/redhat/iso/EFI /var/www/html/redhat/
# cp -r /var/www/html/redhat/iso/images /var/www/html/redhat/ # cp -r /var/www/html/redhat/iso/EFI /var/www/html/redhat/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使引导装载程序配置可编辑:
chmod 644 /var/www/html/redhat/EFI/BOOT/grub.cfg
# chmod 644 /var/www/html/redhat/EFI/BOOT/grub.cfg
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑
/var/www/html/redhat/EFI/BOOT/grub.cfg
文件,并将其内容替换为以下内容:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在这个文件中,替换以下字符串:
- rhel-9-3-0-BaseOS-x86_64 和 Red Hat Enterprise Linux 9.3
- 编辑版本号,以使其与您下载的 RHEL 版本匹配。
- 192.168.124.2
- 使用服务器的 IP 地址替换。
使 EFI 引导文件可执行:
chmod 755 /var/www/html/redhat/EFI/BOOT/BOOTX64.EFI
# chmod 755 /var/www/html/redhat/EFI/BOOT/BOOTX64.EFI
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在防火墙中打开端口,以允许 HTTP (80)、DHCP (67, 68)和 DHCPv6 (546, 547)流量:
firewall-cmd --zone public \ --add-port={80/tcp,67/udp,68/udp,546/udp,547/udp}
# firewall-cmd --zone public \ --add-port={80/tcp,67/udp,68/udp,546/udp,547/udp}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 这个命令启用了临时访问,直到下次服务器重启为止。
-
可选:若要启用永久访问权限,可在 命令中添加
--permanent
选项。 重新载入防火墙规则:
firewall-cmd --reload
# firewall-cmd --reload
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 启动 HTTP 服务器:
systemctl enable --now httpd
# systemctl enable --now httpd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建
html
目录,并使其内容可读和可执行:chmod -cR u=rwX,g=rX,o=rX /var/www/html
# chmod -cR u=rwX,g=rX,o=rX /var/www/html
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 恢复
html
目录的 SELinux 上下文:restorecon -FvvR /var/www/html
# restorecon -FvvR /var/www/html
Copy to Clipboard Copied! Toggle word wrap Toggle overflow