In the VMware vSphere 5 Install, Configure, Manage (ICM) class’s labs, we create a Windows 2003 Server virtual machine. The students use the New Virtual Machine wizard to create the VM and then they mount a Windows ISO image on the VM’s virtual CD/DVD drive. Finally, the students boot the VM from the mounted ISO to launch the Windows installation.
During this week’s class, one of my students could not boot the new VM. He saw the following error message in the VM’s console:
That seemed like a strange error to get in our well-tested lab environment. The hunt was on for the cause of the problem.
As seen in the screenshot above, the Windows boot program could not find any hard drives from which to boot, even though the student had specified a valid datastore to use for the virtual disk. We checked the VM’s hardware configuration to be sure the hard disk was configured correctly:
We poked around the VM’s configuration some more and eventually I noticed that the student had inadvertently changed the VM’s SCSI controller. The default for Windows 2003 is to use the LSI Logic Parallel controller because that driver is supported by W2K3 OS. The student however, had selected an incorrect controller:
Once he corrected the SCSI controller setting, the VM booted from the attached ISO as expected.
Their are two lessons to be learned from this:
- Generally speaking, when you create a new VM, you can (and should) leave the SCSI controller setting on the default, which is determined by the VM’s guest operating system setting.
- Oftentimes, the cause of an error or failure is indirect. In this case, the problem was not that Windows 2003 did not have a hard disk; the problem was that Windows could not see the hard disk that it did have, because it was told to use a driver that it did not support.