在 HP Proliant 硬件上从 Linux 进行一次性 PXE 引导

law*_*law 7 centos hp-proliant pxe-boot

因此,我使用 Systemimager 通过 PXE 配置新的 CentOS 5.3 主机。我们有几台服务器,它们只是测试目标,我们每天会重新映像几十次,通常,让它们进入 PXE 引导就像登录到它们的 iLO 接口一样简单,重新启动,并在适当的时候按 F12时间。我的问题是,是否可以通过 linux 命令行告诉服务器在下次重新启动期间执行“一次性 PXE 启动”?每个重新映像周期都会为我节省很多时间点击、输入、等待 Java 加载 ilo 控制台等。我知道戴尔通过 OpenIPMI 具有此功能,但我想知道 HP 是否有类似的功能。

非常感谢!——李

Kam*_*iel 7

这应该可以通过 ipmitool 实现。赶紧跑:

ipmitool chassis bootdev pxe
Run Code Online (Sandbox Code Playgroud)

您的下一次启动应该是 PXE 启动。

编辑:这似乎不适用于 HP iLO2。但是,您可以通过 SSH 连接到 iLO2 接口并通过发出

set /system1/bootconfig1/bootsource5 bootorder=1
Run Code Online (Sandbox Code Playgroud)

在不支持从 USB 密钥启动的系统上,它将bootsource4改为。有关完整的详细信息,请参阅iLO2 脚本参考

您可以将此命令作为参数发出ssh,这也应该有效。


law*_*law 6

所以我在同事的帮助下想通了这一点。它是一个肮脏,肮脏的黑客,但它有效!HP Proliants(至少现在,在 2009 年底)将尝试从 CDROM 引导,然后尝试使用硬盘,然后尝试使用 USB 记忆棒,然后他们将进行 PXE 引导。因为无论如何我都在重新映像服务器,所以我发现如果我们无论如何都要关闭引导扇区并立即重新启动,HP boxen 将完成引导过程,绕过硬盘,因为没有 MBR,并立即进行 PXE 引导。我编写了一个脚本来发出 dd 命令:

#!/bin/bash

# This is meant to assist in re-imaging a server.  This will blow away the
# main partition of a given box, forcing it to pxe-boot next boot.
# Naturally, don't be an idiot and run this on a machine you DON'T want nuked
# from orbit

echo "Nuking from orbit will commence in 5 seconds.  Ctrl-C if this NOT what you want."
echo "You have been warned!"
sleep 8

dd if=/dev/urandom of=/dev/cciss/c0d0 bs=512 count=2

dd if=/dev/urandom of=/dev/cciss/c0d0p1 bs=512 count=2
dd if=/dev/urandom of=/dev/cciss/c0d1p1 bs=512 count=2
dd if=/dev/urandom of=/dev/cciss/c0d2p1 bs=512 count=2
sync

echo "Nuke complete!  Rebooting in 5..."
sleep 5
reboot
Run Code Online (Sandbox Code Playgroud)

哼!——李