Virtualbox from Sun Microsystems is very cool. The snapshot feature is priceless for testing application deployments. One of the annoying things, however, is the eventual loss of domain membership. Eventually Windows
changes the computer account password, you snapshot back the VM to a time where the password was different and it loses its domain membership. Of course, you can keep re-joining the VM back to the domain, but this gets old after a while. I went on Google and found http://blogs.msdn.com/virtual_pc_guy/archive/2006/03/28/561508.aspx, then leading to a posting made by “Jesse” who offers us this: http://support.microsoft.com/kb/175468. We can disable the computer account password expiration by setting the following:
Click Start, click Run, type Gpedit.msc, and then press ENTER.
Expand Local Computer Policy, expand Windows Settings, expand Security Settings, expand Local Policies, expand Security Settings, expand Local Policies, and then expand Security Options.
Configure the following settings:
Domain Member: Disable machine account password change - Enabled Domain Member: Maximum machine account password age to 999 days Domain Controller: Refuse machine account password changes - Enabled
Although the article only states this is for Windows XP and 2003, I checked my enterprise copy of Windows 7 and the same settings still exist, so I assume this would work for VMs running Windows Vista/7 and beyond. The other handy tip from “Jesse” is that you can do a domain unjoin/rejoin in one step (one reboot) by using the NETBIOS name of the domain instead of the DNS name. For example: yourdomain.com would be the DNS name and yourdomain would be the NETBIOS name. During the domain rejoin, just chop the .com part off.
The next goal was taking our standard image and bringing it into Virtualbox. I used Disk2VHD from Sysinternals and then tried booting the VM. I would just get a black screen and upon trying to use safe mode, I saw it was locking up at mup.sys. This is jogged my memory: HAL issue. I always keep copy of the ACPI HAL files since we still have Dell D600 laptops that use the older HAL. I copied ntkrnlpa.exe, ntoskrnl.exe and hal.dll to C:windowssystem32 and my “hacked” hal.inf to C:windowsinf. VM booted right up! I later found out from this article that it was indeed a HAL issue, but their solution is a repair of the OS to change the HAL. Why do a repair when you can just change 4 files?
– Soli Deo Gloria