10.3. 将 Kickstart 文件添加到 UEFI HTTP 或 PXE 安装源中
在 Kickstart 文件就绪后,您可以使其用于目标系统上的安装。
10.3.1. 基于网络安装的端口 复制链接链接已复制到粘贴板!
下表列出了必须在服务器上打开的端口,以便为每种基于网络的安装提供文件。
| 使用的协议 | 打开端口 |
|---|---|
| HTTP | 80 |
| HTTPS | 443 |
| FTP | 21 |
| NFS | 2049, 111, 20048 |
| TFTP | 69 |
10.3.2. 在 NFS 服务器上共享安装文件 复制链接链接已复制到粘贴板!
您可以在 NFS 服务器上存储 Kickstart 脚本文件。将其存储在 NFS 服务器上使您能够从单个源安装多个系统,而无需对 Kickstart 文件使用物理介质。
先决条件
- 您对本地网络上的 Red Hat Enterprise Linux 8 服务器有管理员级别的访问权限。
- 要安装的系统可以连接到服务器。
- 服务器上的防火墙允许来自您要安装的系统的连接。
确保您在 inst.ks 和 inst.repo 中使用不同的路径。当使用 NFS 托管 Kickstart 时,您不能使用相同的 nfs 共享来托管安装源。
流程
作为 root 运行以下命令安装
nfs-utils软件包:# yum install nfs-utils- 将 Kickstart 文件复制到 NFS 服务器的目录中。
使用文本编辑器打开
/etc/exports文件,并使用以下语法添加一行:/exported_directory/ clients使用到包含 Kickstart 文件的目录的完整路径替换 /exported_directory/。要从这个 NFS 服务器安装计算机的主机名或 IP 地址替换 clients,如果您想允许任何可访问该 NFS 服务器的计算机都能使用该 ISO 镜像,则使用该系统所在的子网络访问该 ISO 镜像,或者使用星号(
*)。有关此格式的详细信息,请参见 exports(5) 手册页。以下是一个基本配置,它使/rhel8-install/目录以只读方式对所有客户端可用:/rhel8-install *-
保存
/etc/exports文件并退出文本编辑器。 启动 nfs 服务:
# systemctl start nfs-server.service如果在更改
/etc/exports文件前运行该服务,请输入以下命令以便运行的 NFS 服务器重新载入其配置:# systemctl reload nfs-server.serviceKickstart 文件现在可以通过 NFS 访问并准备用于安装。
在指定 Kickstart 源时,使用 nfs: 协议、服务器的主机名或 IP 地址、冒号 (:) 以及包含该文件的目录内的路径。例如:如果服务器的主机名为 myserver.example.com,且您已将文件保存在 /rhel8-install/my-ks.cfg 中,指定 inst.ks=nfs:myserver.example.com:/rhel8-install/my-ks.cfg 作为安装源引导选项。
10.3.3. 在 HTTP 或 HTTPS 服务器上共享安装文件 复制链接链接已复制到粘贴板!
您可以将 Kickstart 脚本文件存储在 HTTP 或 HTTPS 服务器上。在 HTTP 或 HTTPS 服务器中存储 Kickstart 文件可让您从一个源安装多个系统,而无需对 Kickstart 文件使用物理介质。
先决条件
- 您对本地网络上的 Red Hat Enterprise Linux 8 服务器有管理员级别的访问权限。
- 要安装的系统可以连接到服务器。
- 服务器上的防火墙允许来自您要安装的系统的连接。
流程
要在 HTTP 上存储 Kickstart 文件,请安装
httpd软件包:# yum install httpd要在 HTTPS 上存储 Kickstart 文件,请安装
httpd和mod_ssl软件包:# yum install httpd mod_ssl警告如果您的 Apache 网页服务器配置启用了 SSL 安全性,请确定您只启用 TLSv1 协议,并禁用 SSLv2 和 SSLv3。这是因为 POODLE SSL 漏洞(CVE-2014-3566)。如需更多信息,请参阅红帽知识库解决方案 解决 POODLE SSLv3.0 漏洞。
重要如果您使用带有自签名证书的 HTTPS 服务器,则必须使用
inst.noverifyssl选项引导安装程序。-
将 Kickstart 文件复制到 HTTP(S) 服务器的
/var/www/html/目录的子目录中。 启动 httpd 服务:
# systemctl start httpd.serviceKickstart 文件现在可以访问并可用于安装。
当指定 Kickstart 文件的位置时,请使用
http://或https://作为协议、服务器的主机名或 IP 地址,以及 Kickstart 文件的路径(相对于 HTTP 服务器 root)。例如:如果您使用 HTTP,则服务器的主机名为myserver.example.com,并且您已将 Kickstart 文件复制为/var/www/html/rhel8-install/my-ks.cfg,将http://myserver.example.com/rhel8-install/my-ks.cfg指定为文件的位置。
10.3.4. 在 FTP 服务器上共享安装文件 复制链接链接已复制到粘贴板!
您可以将 Kickstart 脚本文件存储在 FTP 服务器上。将脚本存储在 FTP 服务器上使您能够从单个源安装多个系统,而无需将物理介质用于 Kickstart 文件。
先决条件
- 您对本地网络上的 Red Hat Enterprise Linux 8 服务器有管理员级别的访问权限。
- 要安装的系统可以连接到服务器。
- 服务器上的防火墙允许来自您要安装的系统的连接。
流程
安装
vsftpd软件包。请作为 root 运行以下命令完成此步骤:# yum install vsftpd在文本编辑器中打开并编辑
/etc/vsftpd/vsftpd.conf配置文件。-
将
anonymous_enable=NO行改为anonymous_enable=YES -
将
write_enable=YES行改为write_enable=NO。 添加行
pasv_min_port=min_port和pasv_max_port=max_port。使用被动模式下 FTP 服务器使用的端口范围替换min_port和max_port,例如10021和10031。在带有各种防火墙/NAT 设置的网络环境中,这个步骤可能是必要的。
可选:在您的配置中添加自定义更改。可用选项请查看 vsftpd.conf(5) 手册页。这个步骤假设使用了默认选项。
警告如果在
vsftpd.conf文件中配置了 SSL/TLS 安全性,请确保只启用 TLSv1 协议,并禁用 SSLv2 和 SSLv3。这是因为 POODLE SSL 漏洞(CVE-2014-3566)。如需更多信息,请参阅红帽知识库解决方案 解决 POODLE SSLv3.0 漏洞。
-
将
配置服务器防火墙。
启用防火墙:
# systemctl enable firewalld # systemctl start firewalld在您的防火墙中启用前一步中的 FTP 端口和端口范围:
# firewall-cmd --add-port min_port-max_port/tcp --permanent # firewall-cmd --add-service ftp --permanent # firewall-cmd --reload将 min_port-max_port 替换为您输入到
/etc/vsftpd/vsftpd.conf配置文件的端口号。
-
将 Kickstart 文件复制到 FTP 服务器的
/var/ftp/目录或其子目录中。 请确定在文件中正确设置了正确的 SELinux 上下文和访问模式:
# restorecon -r /var/ftp/your-kickstart-file.ks # chmod 444 /var/ftp/your-kickstart-file.ks启动
vsftpd服务:# systemctl start vsftpd.service如果在更改
/etc/vsftpd/vsftpd.conf文件前运行该服务,重启该服务以载入经过编辑的文件:# systemctl restart vsftpd.service在引导过程中启用
vsftpd服务:# systemctl enable vsftpdKickstart 文件现在可以访问,并可用于同一网络中的系统安装。
注意在配置安装源时,使用
ftp://作为协议、服务器的主机名或 IP 地址以及 Kickstart 文件的路径(相对于 FTP 服务器 root)。例如:如果服务器的主机名是myserver.example.com,且您已将文件复制到/var/ftp/my-ks.cfg中,请指定ftp://myserver.example.com/my-ks.cfg作为安装源。