Creating a VMWare ESXi ISO for an Aberdeen Stirling 169 Server
We recently bought two Aberdeen Stirling 169 machines to go into our data center for a web and database machine. The database machine I want to run Windows on bare hardware but for the web machine I like the idea of running some type of a Hypervisor so that I can get multiple virtual machines running on the same hardware. My first option was the Hyper-V that comes with Microsoft Windows Server 2008. But after finding out that it did not come with my Website Spark subscription I had to come up with a new idea. That idea was VMWare ESXi. The free version of ESX that was released in July of 2008. I am already familiar with ESX as I have used it quite a lot in the past so this seemed like a good option.
Unfortunately, it does not install out of the box on the Aberdeen server that we bought. I was able to get it to work and I’m sure someone else could benefit from a little explanation of what I had to do.
There are two problems that prevent a simple install.
- The Areca raid card was not supported
- The Intel network card was not supported
This is a bit of an interesting situation since I have two unsupported devices on this server. Searching around I would find a fix for one, or the other, but not both together. In order to perform this installation this is what you will need:
- VirtualBox
- Ubuntu Desktop 9.10 ISO
- VMWare ESXi 4.0 ISO
- Areca ESXi 4.0 oem.tgz
- Areca ESXi 4.0 inetd.conf
- Areca ESXi 4.0 mkesxiaio_3.8.sh
- VMware ESX/ESXi 4.0 Driver CD for Intel 82575 and 82576 Gigabit Ethernet Controller
- 7-Zip
Now the reason I have VirtualBox and Ubuntu Desktop listed out there is that the Areca drivers come with an easy way to integrate their drivers into the ESXi CD. But you need to have access to a linux machine in order to do this. There are some ways to do it directly using windows but it seemed a bit more complicated than what I had to do to get it to work.
Step 1
Download all of the required bits. The ISO’s, scripts and software.
Step 2
- Install VirtualBox (this will require a reboot because of the networking drivers.)
- Install Ubuntu 9.10 in a new VirtualBox VM.
Create a new Transient Folder using the VirtualBox menu (Devices -> Shared Folders) to point at a place on your windows machine that will be shared between the Linux VM and the Host.

Mount the Shared Folder in ubuntu with this command.
mkdir /media/Desktop/
mount -t vboxsf Desktop /media/Desktop/
Step 3
Using 7-Zip: extract igb.o and some /etc settings from the vmware-esx-drivers-net-igb_400.1.3.19.12.1-1.0.4.164009.185976.iso that you downloaded for the Intel NIC drivers. This can be a little difficult to find in the archive. You need to drill down into the .rpm folder and through several archives before you finally run into them. Here is the full path as shown by 7-Zip.
vmware-esx-drivers-net-igb_400.1.3.19.12.1-1.0.4.164009.185976.iso\.rpm\vmware-esx-drivers-net-igb-400.1.3.19.12.1-1.0.4.164009.x86_64.r\vmware-esx-drivers-net-igb-400.1.3.19.12.1-1.0.4.164009.x86_64.cpio.gz\\build\mts\release\bora-185976\tmp\tmpH9vonw.vibpublish-rpm\vmware-esx-drivers-net-igb-400.1.3.19.12.1-1.0.4.164009.x86_64.rpm\.\
You should see a \etc and \usr at that point. Extract them and add it to where the \etc and \usr is in the oem.tgz archive.
Step 4
Take VMware-VMvisor-Installer-4.0.0.Update01-208167.x86_64.iso, oem.tgz, mkesxiaio_3.7.sh, and inetd.conf into the shared folder. In my case it was the desktop. Open up the Ubuntu VM and take those 4 files and copy them to a different folder that is local to the machine.

Step 5
Open up a Terminal in Ubuntu (Applications -> Accessories -> Terminal) and run the mkesxiaio_3.7.sh script.
cd ~/Desktop/areca
chmod +x ./mkesxiaio_3.7.sh
./mkesxiaio_3.7.sh

This will start the merging of oem.tgz into the ESXi ISO. The first step in the process will ask which version of ESXi you are working with. In our case it’s the 4.0 version.

After you choose the 4.0 option it will start the check to make sure that your Ubuntu system has all of the required software in order to perform the merge.

It will then ask what type of customized installation you are working with: ISO or USB. I choose ISO since I am taking advantage of the IPMI that came with the Aberdeen to perform the installation.

The next choice is if you want to integration FTP or SSH (or both) into the installation. This one is up to you depending on your needs.

The process will start moving some data around at this point and then ask you three questions (depending on if you chose the FTP option or not.) It’s whether or not to edit the FTP settings, PCI ids or VMWare’s simple.map file. I chose no on each of these as I didn’t have any more need for customization at this point.

After a few data crunching moments you should be presented with a nice [Done] in the terminal.

At this point it has generated a new ISO to use for the installation: VMware_esxi_custom_4.0_ftp_ssh_oem.iso and are ready for the VMWare ESXi installation.
Hello,
I’ve done what i read in your manual… but i still keep having the message no network controller found… i have an SuperMicro X7DBR-E (in ESXi seen as X7DBR-3). Though it only gives me this error after customizing the OEM.TGZ… I must say the Intel controller in the system is: 82563EB.
When i boot ESXi without customizing the OEM.TGZ for the controller, there are no errors and i can install ESXi on a USB drive.
When i install the driver for Areca, then the first boot the controller is found correctly. When i’ve added the disk(s) as datastore(s) it’s working very nice! But then it comes, when booting after i’ve added the datastore(s), the system can’t boot anymore.
It starts and loads all modules but hangs on vfat. After a while (about 30 sec) the system gives the error “Failed to find boot partition”.
It seems that customizing the OEM.TGZ brings me in the situation of not able to install at all. I hope you can help me in any way. I also tried customizing the ESXi 3.5 version, and that works very nice. It’s only on ESXi 4.0. The thing is, i prefer to install 4.0 on a USB drive.
Sincerely,
Michiel