Bootable USB drives are a great thing. You can easily upgrade the software on a USB drive, wipe out the drive, or replace it. Heck, even most USB flash drives can get run through a washer AND dryer and STILL work! So with this in mind, I have decided to start a run of posts that go over the creation of various USB boot disks! Your welcome.
For the first edition of this series, I have decided to create a USB boot disk for something special…… VMWare ESXi 4.0. This came about when I didn’t have a DVD burner to burn the downloadable ISO file to a DVD.
****DISCLAIMER:
I want to be very clear about this article. This article does NOT explain how to install the VMWare hypervisor ON a USB drive or TO a USB drive. It explains only how to make a bootable USB drive as a bootable VMWare disk in order to install VMWare ESXi on a hard drive in a compatible computer. The USB drive will work just as if you booted a computer from the VMWare DVD. Lets get started, shall we?
First, some rules and guidelines about this entire process. These instructions are for creating the USB drive from a Windows 7 64 bit computer (no offense to Linux gurus). Unless you have User Account Control disabled, be sure to launch all programs using “Run As Administrator” (hold SHIFT and right-click on the file to see Run As Administrator appear in the context menu). If you disabled User Account Control in Vista or Windows 7, then you have nothing to worry about. These instructions only work with VMWare ESX or ESXi versions 4.0 or 4.0 Update 1. This WILL NOT WORK with VMWare ESX or ESXi 4.1. There is some strange hardware issue with v4.1 where it ‘forgets’ where the boot media is after you have selected a SATA hard drive to install the software to. I think this is due to the fact that VMWare is starting to force administrators to purchase hardware that is on the official VMWare Hardware Compatibility List (HCL) for support reasons. It doesn’t matter though. After you have installed 4.0 or 4.0 Update 1 on the target computer you can upgrade to 4.1.
You will need 3 things to get started….

  1. USB drive at least 512mb in size.
  2. Copy of the VMWare ESX or ESXi 4.0 Update 1 Installable ISO file.
  3. Copy of Multiboot ISOs USB Creator from www.pendrivelinux.com

After you have retrieved all of the items listed above, here is exactly what to do:

  1. Launch Multiboot ISOs USB Creator as an administrator.
  2. Click “agree” at the EULA, click NO when prompted if you want to try the experimental version.
  3. Select your USB drive, check the box to format the drive, highlight “MemTest86+”, check the box to download the ISO, then click the “Create” button (screenshot of the options you need to make is below):

image
4. When the program has complete, click Next, then NO if asked to add more distros. Click Finish to close the program.
5. Navigate to the root of the USB disk in Windows Explorer (you will notice that the volume name is “MULTIBOOT”).
6. Copy the VMWare ESXi ISO file directly to the root of the multiboot USB drive.
7. Rename the ISO to “VMWARE40.ISO”.
8. Open the MENU.LST file in a text editor.
9. Paste this text EXACTLY as it is shown below at the end of the file and save it:

_**title VMWare

find --set-root /vmware40.iso

map --mem /vmware40.iso (hd32)

map --hook

root (hd32)

chainloader (hd32)**_
10. Safely remove the USB drive from the Windows computer.
11. Boot your target computer from the newly created USB drive.
12. At the boot menu, select VMWare and wait a moment.
13. The VMWare installation menu will appear.
14. Done.

So what happened after the computer boots to the USB drive? A menu displayed with the bootable ISOs in the list. At this time there are 2. One is the MemTest tool, the other is VMWare. You chose the VMWare selection and hit enter. The bootloader created a temporary RAM drive, copied the ISO file to the RAM drive, then booted the ISO directly from RAM. Since the entire ISO image is loaded directly into RAM, you will notice that the VMWare installation completes extremely fast. When the computer reboots, the RAM drive is lost and proceeds to boot ESX normally. Pretty slick, huh?
image