7.4. 为基于 BIOS 的客户端配置 TFTP 服务器
您必须配置一个 TFTP 服务器和 DHCP 服务器,并在 PXE 服务器上为基于 BIOS 的 AMD 和 Intel 64 位系统启动 TFTP 服务。
流程
以 root 用户身份,安装以下软件包:
# dnf install tftp-server
允许到防火墙中的
tftp 服务
的传入连接:# firewall-cmd --add-service=tftp
这个命令启用了临时访问,直到下次服务器重启为止。
可选:要启用永久访问,请在命令中添加
--permanent
选项。根据安装 ISO 文件的位置,您可能需要允许 HTTP 或者其他服务的进入连接。
从 DVD ISO 镜像文件中的
SYSLINUX
软件包访问pxelinux.0
文件,其中 my_local_directory 是您创建的目录的名称:# mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
# cp -pr /mount_point/AppStream/Packages/syslinux-tftpboot-version-architecture.rpm /my_local_directory
# umount /mount_point
解压软件包:
# rpm2cpio syslinux-tftpboot-version-architecture.rpm | cpio -dimv
在
tftpboot/
中创建pxelinux/
目录,并将该目录中的所有文件复制到pxelinux/
目录中:# mkdir /var/lib/tftpboot/pxelinux
# cp /my_local_directory/tftpboot/* /var/lib/tftpboot/pxelinux
在
pxelinux/
目录中创建pxelinux.cfg/
目录:# mkdir /var/lib/tftpboot/pxelinux/pxelinux.cfg
创建名为
default
的配置文件,并将其添加到pxelinux.cfg/
目录中,如下例所示:default vesamenu.c32 prompt 1 timeout 600 display boot.msg label linux menu label ^Install system menu default kernel images/RHEL-9/vmlinuz append initrd=images/RHEL-9/initrd.img ip=dhcp inst.repo=http://192.168.124.2/RHEL-9/x86_64/iso-contents-root/ label vesa menu label Install system with ^basic video driver kernel images/RHEL-9/vmlinuz append initrd=images/RHEL-9/initrd.img ip=dhcp inst.xdriver=vesa nomodeset inst.repo=http://192.168.124.2/RHEL-9/x86_64/iso-contents-root/ label rescue menu label ^Rescue installed system kernel images/RHEL-9/vmlinuz append initrd=images/RHEL-9/initrd.img inst.rescue inst.repo=http:///192.168.124.2/RHEL-8/x86_64/iso-contents-root/ label local menu label Boot from ^local drive localboot 0xffff
-
安装程序在没有运行时镜像的情况下无法引导。使用
inst.stage2
引导选项指定镜像的位置。另外,您可以使用inst.repo=
选项指定镜像和安装源。 -
与
inst.repo
一起使用的安装源位置必须包含有效的.treeinfo
文件。 -
当您选择 RHEL9 安装 DVD 作为安装源时,
.treeinfo
文件会指向 BaseOS 和 AppStream 存储库。您可以使用单个inst.repo
选项来加载这两个软件仓库。
-
安装程序在没有运行时镜像的情况下无法引导。使用
创建一个子目录,以将引导镜像文件存储在
/var/lib/tftpboot/
目录中,并将引导镜像文件复制到 目录。在这个示例中,目录为/var/lib/tftpboot/pxelinux/images/RHEL-9/
:# mkdir -p /var/lib/tftpboot/pxelinux/images/RHEL-9/ # cp /path_to_x86_64_images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/pxelinux/images/RHEL-9/
启动并启用
tftp.socket
服务:# systemctl enable --now tftp.socket
PXE 引导服务器现在可以提供 PXE 客户端。您可以启动客户端,即您要安装 Red Hat Enterprise Linux 的系统,在提示指定引导源时选择 PXE 引导,并启动网络安装。