您可以格式化 USB 闪存驱动器以引导 ESXi 安装或升级。
此过程中的说明假设 USB 闪存驱动器被检测为 /dev/sdb。
注: 包含安装脚本的
ks.cfg 文件不能位于引导安装或升级所使用的同一个 USB 闪存驱动器上。
前提条件
- 超级用户可以访问的 Linux 计算机
- Linux 计算机可以检测到的 USB 闪存驱动器
- ESXi ISO 映像 VMware-VMvisor-Installer-version_number-build_number.x86_64.iso,其中包括 isolinux.cfg 文件
- Syslinux 3.86 软件包。其他版本可能与 ESXi 不兼容。
过程
- 使用 su 或 sudo root 命令引导 Linux,登录并进入超级用户模式。
- 如果您的 USB 闪存驱动器未检测为 /dev/sdb,或者您不确定 USB 闪存驱动器是如何检测到的,请先确定该闪存驱动器的检测方式。
- 插入 USB 闪存驱动器。
- 在命令行中,运行以下命令以显示当前日志消息。
tail -f /var/log/messages
可以看到以类似以下消息格式显示的标识 USB 闪存驱动器的若干条消息。
Oct 25 13:25:23 ubuntu kernel: [ 712.447080] sd 3:0:0:0: [sdb] Attached SCSI removable disk
在此示例中,sdb 用于标识 USB 设备。如果您设备的标识方式与此不同,请使用该标识替换 sdb。
- 在 USB 闪存驱动器上创建分区表。
/sbin/fdisk /dev/sdb
或者,输入
o 以创建新的空 DOS 分区表。
- 输入
d
删除分区,直至删除所有分区。
- 输入
n
创建遍及整个磁盘的主分区 1。
- 输入
t
将 FAT32 文件系统的类型设置为适当的设置,如 c。
- 输入
a
在分区 1 上设置活动标记。
- 输入
p
打印分区表。
结果应类似于以下消息。
Disk /dev/sdb: 2004 MB, 2004877312 bytes 255 heads, 63 sectors/track, 243 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sdb1 1 243 1951866 c W95 FAT32 (LBA)
- 输入
w
写入分区表并退出程序。
- 使用 FAT32 文件系统格式化 USB 闪存驱动器。
/sbin/mkfs.vfat -F 32 -n USB /dev/sdb1
- 在 USB 闪存驱动器上安装 Syslinux 引导加载程序。
Syslinux 可执行文件和
mbr.bin 文件的位置可能因 Syslinux 版本而异。默认使用以下命令。
/usr/bin/syslinux /dev/sdb1
cat /usr/lib/syslinux/mbr/mbr.bin > /dev/sdb
例如,您可以下载 syslinux-3.86.zip 的副本,解压缩存档,按照其说明编译 syslinux 源代码,随后如果从下载的目录中运行 syslinux 安装,则可以使用以下命令:
cd ~/Downloads/syslinux-3.86
.mtools/syslinux /dev/sdb1
cat mbr/mbr.bin > /dev/sdb
- 创建一个目标目录并向其挂载 USB 闪存驱动器。
mkdir /usbdisk
mount /dev/sdb1 /usbdisk
- 创建一个源目录并向其挂载 ESXi 安装程序 ISO 映像。
mkdir /esxi_cdrom
mount -o loop VMware-VMvisor-Installer-version_number-build_number.x86_64.iso /esxi_cdrom
- 将 ISO 映像的内容复制到 USB 闪存驱动器。
cp -r /esxi_cdrom/* /usbdisk
- 将 isolinux.cfg 文件重命名为 syslinux.cfg。
mv /usbdisk/isolinux.cfg /usbdisk/syslinux.cfg
- 在 usbdisk/syslinux.cfg 文件中,将
APPEND -c boot.cfg
行编辑为 APPEND -c boot.cfg -p 1
以确保引导加载程序从您在步骤 3 中创建的第一个分区读取文件。分区号可能不同,具体取决于 USB 设备的布局。
- 卸载 USB 闪存驱动器。
- 卸载安装程序 ISO 映像。
结果
您可以使用 USB 闪存驱动器引导 ESXi 安装程序。