在 UEFI 上使用最少的启动介质启动 RHEL 6.7

在 UEFI 上使用最少的启动介质启动 RHEL 6.7

我是 RHEL 新手(自 2000 年代初以来,它还是开源的,我就没有使用过它),目前正在尝试将其安装在计算机集群上。我正在尝试尽可能地自动化这个过程。

为此,我创建了一个自定义的 kickstart 文件ks.cfg并将其放置在网络服务器上 ( http://url.com/ks.cfg)。我还将 RHEL 6.7 服务器 ISO 放置在同一个 Web 服务器上,并且在 USB 驱动器上创建了一个可以处理我的机器的最小启动映像 (UEFI)。它可以从 USB 记忆棒启动。

但是,我到达了与此用户相同的 GRUB 菜单有点相关的问题。它似乎是 grub 0.97,而不是我在网上找到的所有教程都使用的 GRUB2。特别值得注意的是,这个版本似乎无法识别关键linux命令,我找到的所有教程都参考了该命令来附加ks=参数。

简而言之,如何调出boot:提示以便发出linux ks=命令?任何帮助表示赞赏!

(如果您想提供一些有关如何设置 PXE 服务器以进行全自动网络安装的信息,我洗耳恭听;该文档并不是特别有帮助,至少在 PXE 服务器方面)

答案1

最简单的可能是调整efidisk.img做你想做的事情,大致如下:

cp /that/cdrom/efiboot.img /root
mount -o loop /root/efiboot.img /mnt
cd /mnt/EFI/BOOT

并且应该有一个(在 RHEL7 或同等版本下)grub.conf。然后,编辑它,特别是块linuxefi内的行menuentry 'Install ...',以包含类似的内容

        linuxefi /images/pxeboot/vmlinuz inst... ks=http://... quiet

然后卸载它,将dd图像重新传输到闪存驱动器,起泡沫,清洗,冲洗,重复。

在 RHEL6 上,查找一个文件,其中包含带有;BOOT*.conf的 PXE 引导配置行。title尝试添加带有 kickstart 参数的附加行:

title Red Hat Enterprise Linux 6.7
        kernel ...
        initrd ...
        append ks=http://...

(您可能还需要ksdevice=eth0 net.ifnames=0 biosdevname=0参数来强制使用“第一个”网卡并关闭古怪的设备命名,从我们的构建系统中挖掘。)

PXE 设置有些复杂,因为您需要提供 DHCP、TFTP,通常还需要提供 HTTP 来提供文件服务,也许还需要 DNS,并且除了获得有效的有效地址之外,您还需要在所有这些服务中正确使用一些特殊的细节。启动文件正在进行中。像这样的东西http://www.rocksclusters.org/wordpress/项目可能值得关注“集群”,而不是深入研究 Redhat 文档。

相关内容