6.4. 为 HTTP 引导配置 HTTP 服务器


您必须在服务器上安装并启用 httpd 服务,以便服务器可以在网络上提供 HTTP 引导资源。

先决条件

  • 查找服务器的网络地址。

    在以下示例中,服务器有一个 IPv4 地址为 192.168.124.2 的网卡。

流程

  1. 安装 HTTP 服务器:

    # dnf install httpd
    Copy to Clipboard Toggle word wrap
  2. 创建 /var/www/html/redhat 目录:

    # mkdir -p /var/www/html/redhat
    Copy to Clipboard Toggle word wrap
  3. 下载 RHEL DVD ISO 文件。请参阅 所有 Red Hat Enterprise Linux 下载
  4. 为 ISO 文件创建一个挂载点:

    # mkdir -p /var/www/html/redhat/iso
    Copy to Clipboard Toggle word wrap
  5. 挂载 ISO 文件:

    # mount -o loop,ro -t iso9660 path-to-RHEL-DVD.iso /var/www/html/redhat/iso
    Copy to Clipboard Toggle word wrap
  6. 将引导装载程序、内核和 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
    Copy to Clipboard Toggle word wrap
  7. 使引导装载程序配置可编辑,并确保引导文件归运行 httpd 服务器(apache)的用户所有:

    # chmod 644 /var/www/html/redhat/EFI/BOOT/grub.cfg
    # chown -R apache:apache /var/www/html/redhat/EFI
    Copy to Clipboard Toggle word wrap
  8. 编辑 /var/www/html/redhat/EFI/BOOT/grub.cfg 文件,并将其内容替换为以下内容:

    set default="1"
    
    function load_video {
      insmod efi_gop
      insmod efi_uga
      insmod video_bochs
      insmod video_cirrus
      insmod all_video
    }
    
    load_video
    set gfxpayload=keep
    
    set timeout=60
    
    menuentry 'Install Red Hat Enterprise Linux 10.0' --class fedora --class gnu-linux --class gnu --class os {
        	linuxefi /redhat/images/pxeboot/vmlinuz inst.repo=http://192.168.124.2/redhat/iso quiet
        	initrdefi /redhat/images/pxeboot/initrd.img
    }
    submenu 'Troubleshooting -->' {
        	menuentry 'Install Red Hat Enterprise Linux 10.0 in text mode' --class fedora --class gnu-linux --class gnu --class os {
                	linuxefi /redhat/images/pxeboot/vmlinuz inst.repo=http://192.168.124.2/redhat/iso inst.text quiet
                	initrdefi /redhat/images/pxeboot/initrd.img
        	}
        	menuentry 'Rescue a Red Hat Enterprise Linux system' --class fedora --class gnu-linux --class gnu --class os {
                	linuxefi /redhat/images/pxeboot/vmlinuz inst.stage2=http://192.168.124.2/redhat/iso inst.rescue quiet
                	initrdefi /redhat/images/pxeboot/initrd.img
        	}
    }
    Copy to Clipboard Toggle word wrap

    在这个文件中,更新以下字符串:

    安装 Red Hat Enterprise Linux 10.0
    编辑版本号,以使其与您下载的 RHEL 版本匹配。
    192.168.124.2
    替换为服务器的 IP 地址。
  9. 在防火墙中打开端口,以允许 HTTP (80)、DHCP (67, 68)和 DHCPv6 (546, 547)流量:

    # firewall-cmd --zone public \
                   --add-port={80/tcp,67/udp,68/udp,546/udp,547/udp}
    Copy to Clipboard Toggle word wrap

    这个命令启用了临时访问,直到下次服务器重启为止。

  10. 可选:要启用永久访问,请在命令中添加 --permanent 选项。
  11. 重新载入防火墙规则:

    # firewall-cmd --reload
    Copy to Clipboard Toggle word wrap
  12. 启动 HTTP 服务器:

    # systemctl enable --now httpd
    Copy to Clipboard Toggle word wrap
  13. 创建 html 目录,并使其内容可读和可执行:

    # chmod -cR u=rwX,g=rX,o=rX /var/www/html
    Copy to Clipboard Toggle word wrap
  14. 恢复 html 目录的 SELinux 上下文:

    # restorecon -FvvR /var/www/html
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat