After Mike Laverick posted his experience with ESX Server and USB flash disks in another thread, I decided to figure out how to make it work.
- These instructions are based on a Windows PC for simplicity. If you're a Linux guru, then you can obviously do this under Linux. You'd need to know how to mount .ISO images in order to extract files, etc. Steps Required:
1. Plug in your USB flash disk and format it under Windows. Use the FAT filesystem (not FAT32, although it would probably work).
2. From Windows Explorer, find the boot.iso file in the /images directory on the ESX 3.x CD-ROM. Copy boot.iso into a temporary directory on your hard drive.
3. Using your ISO extraction program of choice, extract the contents of the boot.iso file to your USB flash drive. On my PC, it's the E: drive.
4. Delete the isolinux.bin and updatecd.cfg files from the USB flash disk.
5. Rename the isolinux.cfg file on the USB flash disk to syslinux.cfg
6. Using WordPad (not Notepad), open the syslinux.cfg file and add the keyword usb to the end of every line that begins with append. Here's what the file should look like when you're done:
default esx prompt 1 timeout 600 display boot.msg F1 boot.msg F7 snake.msg label debug kernel vmlinuz append initrd=initrd.img noapic nomediacheck debug usb label esx kernel vmlinuz append initrd=initrd.img usb label text kernel vmlinuz append initrd=initrd.img text usb label expert kernel vmlinuz append expert initrd=initrd.img usb label ks kernel vmlinuz append ks initrd=initrd.img usb label lowres kernel vmlinuz append initrd=initrd.img lowres usb
7. Now, extract the syslinux .zip file into another temporary directory on your hard drive.
8. Open up a command prompt and use the cd command to navigate into the win32 directory. For example:
cd C:\temp\syslinux-3.36\win32
9. Now, run the syslinux program to apply the boot loader and boot sector to the USB flash drive:
syslinux -s e: ( On my PC, my USB flash drive is mounted as drive E: )
10. Finally, copy the ESX 3.x ISO image onto the flash drive:
copy c:\iso\esx-3.0.1-32039.iso e:\
11. Confirm that your USB flash drive contains the following files:
boot.cat boot.msg initrd.img snake.msg splash.lss vmlinuz syslinux.cfg esx-3.0.1-32039.iso
12. You're all set! Unplug the USB flash drive, configure the BIOS on your server to boot from USB accordingly, and boot 'er up!
13. The ESX installer will detect the USB device and whatever SCSI / disk controllers you have. When the installer asks you what the installation source will be, choose Hard Disk.
14. You will need to choose the right disk device (ie. /dev/sda, /dev/sdb) that corresponds to your USB flash disk. Chances are it will be /dev/sdb.
15. Finally, the installer will ask you what directory to find the ESX installation CD image in. Just use / and it will find the .ISO image for you.
16. The rest is history!
Please let me know how this works for you and if you run into any glitches. This is going to save me a lot of time since I don't have CD-ROM drives in all of my servers!! Paul
Here's a quick rundown on setting up a USB flash disk (ie. pen drive, flash key, etc.) to install ESX Server.
Requirements:
- You'll need SYSLINUX, a Linux boot loader for removable media. Get it here:
http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.36.zip- These instructions are based on a Windows PC for simplicity. If you're a Linux guru, then you can obviously do this under Linux. You'd need to know how to mount .ISO images in order to extract files, etc. Steps Required:
1. Plug in your USB flash disk and format it under Windows. Use the FAT filesystem (not FAT32, although it would probably work).
2. From Windows Explorer, find the boot.iso file in the /images directory on the ESX 3.x CD-ROM. Copy boot.iso into a temporary directory on your hard drive.
3. Using your ISO extraction program of choice, extract the contents of the boot.iso file to your USB flash drive. On my PC, it's the E: drive.
4. Delete the isolinux.bin and updatecd.cfg files from the USB flash disk.
5. Rename the isolinux.cfg file on the USB flash disk to syslinux.cfg
6. Using WordPad (not Notepad), open the syslinux.cfg file and add the keyword usb to the end of every line that begins with append. Here's what the file should look like when you're done:
default esx prompt 1 timeout 600 display boot.msg F1 boot.msg F7 snake.msg label debug kernel vmlinuz append initrd=initrd.img noapic nomediacheck debug usb label esx kernel vmlinuz append initrd=initrd.img usb label text kernel vmlinuz append initrd=initrd.img text usb label expert kernel vmlinuz append expert initrd=initrd.img usb label ks kernel vmlinuz append ks initrd=initrd.img usb label lowres kernel vmlinuz append initrd=initrd.img lowres usb
7. Now, extract the syslinux .zip file into another temporary directory on your hard drive.
8. Open up a command prompt and use the cd command to navigate into the win32 directory. For example:
cd C:\temp\syslinux-3.36\win32
9. Now, run the syslinux program to apply the boot loader and boot sector to the USB flash drive:
syslinux -s e: ( On my PC, my USB flash drive is mounted as drive E: )
10. Finally, copy the ESX 3.x ISO image onto the flash drive:
copy c:\iso\esx-3.0.1-32039.iso e:\
11. Confirm that your USB flash drive contains the following files:
boot.cat boot.msg initrd.img snake.msg splash.lss vmlinuz syslinux.cfg esx-3.0.1-32039.iso
12. You're all set! Unplug the USB flash drive, configure the BIOS on your server to boot from USB accordingly, and boot 'er up!
13. The ESX installer will detect the USB device and whatever SCSI / disk controllers you have. When the installer asks you what the installation source will be, choose Hard Disk.
14. You will need to choose the right disk device (ie. /dev/sda, /dev/sdb) that corresponds to your USB flash disk. Chances are it will be /dev/sdb.
15. Finally, the installer will ask you what directory to find the ESX installation CD image in. Just use / and it will find the .ISO image for you.
16. The rest is history!
Please let me know how this works for you and if you run into any glitches. This is going to save me a lot of time since I don't have CD-ROM drives in all of my servers!! Paul