Having signed up for the pre-release versions of Vista some time back, I finally got as far as loading the OS onto a machine the other day. (The crunch was needing to have an IE7 to test with. I’m not yet ready to upgrade to IE7 on my main Windows machine.) Lacking a spare physical machine, I thought I’d run Vista on VMWare. Bottom line - it is possible, and it runs well enough, but some tweaking and messing around is required to get it working. Most of this is documented elsewhere, but in case it should prove useful, here are the steps that I went through…
First issue is size. Vista reckons it needs a minimum of 512MB and 20GB RAM. I allocated 768MB to the VM to be on the safe side. As I didn’t have a spare 20GB on my laptop, I decided to create the VM on a USB drive, which is complicating matters, but has worked in the past for Linux VMs. VMWare Workstation 5.0 offers a ‘Longhorn (experimental)’ profile, which I used to create the VM. I installed from a CD containing the RC1 build (build number 5600).
First gotcha is that VMWare will only run correctly at a low resolution prior to installing the VMWare tools. The Vista installer requests a higher resolution initially, and so it doesn’t show on screen. This can be solved by editing the VM’s main config file (the little text file with a .vmx extension). Add the following two lines:
svga.maxWidth = “640″
svga.maxHeight = “480″
Thanks to Joel Spoelsky’s blog post for highlighting this.
The installer will now run, and be visible, although it looks pretty grim. The rest of the install proceeded without a hitch, and dumped me into a 640×480, 16-colour Vista desktop at the end of it.
To get back to a decent screen resolution from here, first install VMWare tools in the usual way, and then shut down the VM, and remove the two lines that you’ve added to the config file.
When it comes back up again, the resolution and colours are much improved (or, at least, the display settings offer a selection of higher resolutions). Under VMWare, it’ll only present a dummy graphics card, so you won’t get the Aero glass effects. Same goes for running Linux with Beryl or Compiz in a VM - no wobbly windows and related fun and games, but there we are.
Second gotcha is that there’s no network connection to the outside world, and no NIC registered with the system (i.e. ipconfig lists nothing). Getting that running took a bit more fiddling around than I had thought.
The VMWare tools virtual CD includes a driver for the VMWare virtual network cards, which can be found in D:\Program Files\VMWare tools\Drivers\vmxnet\win2k once you’ve mounted the installer CD again. There are several ways of installing a driver in Vista, including Add/Remove hardware from the Control Panel, and right-clicking on the driver and selecting Install from the menu. Neither of these work.
The trick that worked for me was to enter the Device Manager from the Control Panel, and select the network adapter from the tree of items. A NIC is listed under ‘network adapters’, and it can be right-clicked. From the Properties dialog, select the Driver tab, and install the driver, pointing it at the driver on the D:\ drive containing the VMWare tools. Vista accepted the driver this time, and all went well, giving me a network connection between my VM and host OS.
Some further tweaking was needed, this time in the Control Panel’s ‘Network and Sharing Center’ to switch to a less draconian profile that alloqwed the host OS to ping the VM and make sure the connection really was there.
Vista still has difficulty shutting down, which I think is due to it disconnecting from the USB drive before it’s finished with it, but that’s a peculiarity of my setup.
Disclaimer: I am not a VMWare expert. I figureed this out the hard way, and it may be a suboptimal solution. If so, please let me know via the comments section. I’m offering up a log of my experiences in the hope that it helps someone else have an easier time getting Vista RC1 onto a VM.