You can format a USB flash drive to boot the ESXi installation or upgrade.
The instructions in this procedure assume that the USB flash drive is detected as /dev/sdb.
- Linux machine with superuser access to it
- USB flash drive that can be detected by the Linux machine
- The ESXi ISO image, VMware-VMvisor-Installer-version_number-build_number.x86_64.iso, which includes the isolinux.cfg file
- A Syslinux 3.86 package. Other versions might not be compatible with ESXi.
- Boot Linux, log in, and enter superuser mode by using a su or sudo root command.
- If your USB flash drive is not detected as /dev/sdb, or you are not sure how your USB flash drive is detected, determine how it is detected.
- Plug in your USB flash drive.
- At the command line, run the command for displaying the current log messages.
tail -f /var/log/messagesYou see several messages that identify the USB flash drive in a format similar to the following message.
Oct 25 13:25:23 ubuntu kernel: [ 712.447080] sd 3:0:0:0: [sdb] Attached SCSI removable disk
In this example, sdb identifies the USB device. If your device is identified differently, use that identification, in place of sdb.
- Create a partition table on the USB flash device.
/sbin/fdisk /dev/sdbAlternatively, enter o to create a new empty DOS partition table.
dto delete partitions until they are all deleted.
nto create a primary partition 1 that extends over the entire disk.
tto set the type to an appropriate setting for the FAT32 file system, such as c.
ato set the active flag on partition 1.
pto print the partition table.The result should be similar to the following message.
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)
wto write the partition table and exit the program.
- Format the USB flash drive with the FAT32 file system.
/sbin/mkfs.vfat -F 32 -n USB /dev/sdb1
- Install the Syslinux bootloader on the USB flash drive.
The locations of the Syslinux executable file and the mbr.bin file might vary for the different Syslinux versions. The following commands are default.
/usr/bin/syslinux /dev/sdb1 cat /usr/lib/syslinux/mbr/mbr.bin > /dev/sdb
For example, you can download a copy of syslinux-3.86.zip, uncompress the archive, compile the syslinux source code by following its instructions, and then, if you run the syslinux installation from the downloaded directory, you can use the following commands:
cd ~/Downloads/syslinux-3.86 .mtools/syslinux /dev/sdb1 cat mbr/mbr.bin > /dev/sdb
- Create a destination directory and mount the USB flash drive to it.
mkdir /usbdisk mount /dev/sdb1 /usbdisk
- Create a source directory and mount the ESXi installer ISO image to it.
mkdir /esxi_cdrom mount -o loop VMware-VMvisor-Installer-version_number-build_number.x86_64.iso /esxi_cdrom
- Copy the contents of the ISO image to the USB flash drive.
cp -r /esxi_cdrom/* /usbdisk
- Rename the isolinux.cfg file to syslinux.cfg.
mv /usbdisk/isolinux.cfg /usbdisk/syslinux.cfg
- In the usbdisk/syslinux.cfg file, edit the
APPEND -c boot.cfgline to
APPEND -c boot.cfg -p 1to make sure that the boot loader reads files from the first partition, which you create in Step 3. The partition number might be different depending on the layout of your USB device.
- Unmount the USB flash drive.
- Unmount the installer ISO image.
You can use the USB flash drive to boot the ESXi installer.