I have a server with two 1 TB harddisks. One harddisk runs Fedora Core and I have installed VMware ESXi on the other harddisk. ESXi boots fine if I change the boot-priority in the BIOS to boot from the disk on which ESXi is installed, but I would like to have a multi-boot configuration using grub. However I could not get grub to boot ESXi. I checked the partition table created by the ESXi with fdisk by booting from my Fedora partition. It shows the following partitions (summarized):
Partition Start End System
/dev/sdb1 5 750 Extended
/dev/sdb4 1 4 FAT16
/dev/sdb5 5 52 FAT16
/dev/sdb6 53 100 FAT16
/dev/sdb7 101 210 VMware VMKCORE
Partition table entries are not in disk order
(The VMFS partition is not show yet because this snapshot has been taken before the first boot of ESXi). The geometry is also different from the geometry of the unformatted disk (CHS=121601/255/63) and from the other 1TB disk that runs Fedora (also CHS=121601/255/63). My guess is that grub does not like the partition table. Is there any reason why ESXi uses this partitcular partition table and geometry?
I could make image backups of these partitions, reformat the harddisk and recreate the partitions with the default geometry, but would ESXi still work with this different geometry?
Why not boot ESXi from a USB key on the server, using one of the 1TB disks for localised VMFS storage? You can then dual boot between O/S's by selecting either boot from hard disk or boot from USB key at boot time in the BIOS.
There is a guide on how to boot ESXi from a USB key: - http://www.yellow-bricks.com/2008/07/29/esxi-35-update-2-on-a-usb-memory-key/
If you found this helpful, please consider awarding points
Meanwhile I have found how to do it. I disconnected the two harddisks on which Fedora was installed to make sure ESXi does not erase the partitions on these disks on first boot. I installed ESXi 4.0 on the remaining disk and rebooted to create the VMFS volume. I reconnected the two harddisks on which Fedora was installed, changed the boot-order in the BIOS to boot from the Fedora harddisk and added the following entry to /etc/grub.conf:
map (hd0) (hd2)
map (hd2) (hd0)
Depending on your harddisk configuration you might need (hd1), (hd3) etc. instead of (hd2)
Mean while I have found how to do it. I disconnected the two harddisks on which Fedora was installed to make sure ESXi does not erase the partitions on these disks on first boot.
While helpful this isn't going to happen. ESX is an OS for the purpose of hosting VM's. It is not Linux. ESX also does not support dual boot, despite the fact there are similarities between the 2 with grub and console, ESX was not intended to work with any version of Linux.
Therefore, we don't want to encourage people to dual boot, since this is not the intention. If VM Ware support saw this, they would tell you to delete Fedora and/or reinstall ESX and make it the ONLY OS for that machine. This type of configuration will never be accepted in the 'real' world because this is not what you use ESX for.
It causes problems, and it's just not what people should be using ESX for.