This article describes how a laptop equipped with OpenSuSE 11.1 was configured to run Windows 2000 successfully within a virtual machine, using the VirtualBox software.
The author needed to use various, somewhat ancient Windows software but had only OpenSuSE 11.1 on a laptop. The laptop had about 17GB of free hard disk space and approximately 1.7GB of RAM. Wine (The Windows compatibility layer software) had been tried but with less than satisfactory results.
It was decided to try to use a virtual machine to provide a Windows-2000 platform within the OpenSuSE environment. It was found that OpenSuSE ships with software called 'VirtualBox' and online reviews were found that indicated that this software was generally usable.
The OpenSuSE 11.1 distribution contains the open-source edition (OSE) of VirtualBox. This was installed in the usual way using YaST.
The Windows-2000 CD was copied to an ISO file which was stored within the Linux file system. This was done so that the physical disk could be put back into safe storage and its contents thenceforth retrieved from the ISO file. This is possible because VirtualBox allows an ISO file to be mounted as if it were a CD. The command used to create the ISO file was:
readcd dev=/dev/cdrom f=Win2K.iso
As part of the VirtualBox installation process a new group called vboxusers is created. After the software had installed, the user account was manually made a member of this group.
An attempt was made to start VirtualBox but nothing happened. This problem
appeared to be caused because the Linux user was not a member of some other
group that it was expected to be a member of. The user was made a member of
groups users, dialout, and video. Thereafter the user was able to start the
VirtualBox software. Note, when a new user account is created with OpenSuSE
the user is automatically made a member of these three groups so most people
will likely not experience the problem I experienced.
Within the VirtualBox environment a new virtual machine was created. It was given the name Win2K and allocated 300MB of RAM with 8MB of video RAM. The virtual machine was told to mount the ISO image file (created earlier) as its virtual CD-ROM. This was done by first clicking on the Devices pull-down menu and choosing to mount a CD/DVD ROM image:
Devices -> mount CD/DVD -> CD/DVD ROM image -> choose Win2K ISO file
The virtual machine was started, it booted the virtual CD and Windows-2000 was then installed in the normal fashion. No extra drivers were specified; the installation used only the Windows-2000 software with no extra frills.
Once Windows-2000 was running in the virtual machine the 'guest additions' software was installed. This was accomplished by choosing to download 'guest additions' from the 'Devices' pull-down menu. The GuestAdditions ISO file was saved under ~/.VirtualBox directory. Once the download was complete the file was moved to a more convenient location. At the time of writing (September 2009) the guest additions file can also be downloaded directly from: http://download.virtualbox.org/virtualbox/2.2.0/VBoxGuestAdditions_2.2.0.iso
The virtual machine was terminated and while it was inactive, the guest additions ISO file was specified as the new CD-ROM. This was done as for the Windows 2000 ISO file earlier:
Devices -> mount CD/DVD -> CD/DVD ROM image -> choose guest additions ISO file
The virtual machine was restarted whereupon the usual Windows AutoRUN causes the software on the GuestAdditions 'CD' to be exectuted. A dialog box opened, the licence and the default installation directory were accepted, ... and the installation then began. It was necessary to click a buttons as the installation proceeds, to accept that the software wasn't digitally signed. Once the software was installed the virtual machine was rebooted as suggested by the installer.
While the virtual machine is running it is possible (via the Devices pull-down menu) to specify directories on the host Linux file system that are to be made available, notionally as network shares, to the Windows-2000 guest operating system. Once they had been defined, they were accessed from within Windows 2000 as network shares and allocated drive letters for convenience.
Since I keep a repository of software within my Linux file system it was convenient to make the Windows software directories available to the virtual machine as shared directories. From once such shared directory the WInodws-2000 service pack 4 was installed and then the virtual machine rebooted again.
From other directories within the repository various software packages were installed. During this process it was discovered that some software would install correctly from the shared directory while attempts to install some other software would fail in obscure ways. When software would not install correctly the files were copied from the shared repository directory to a temporary directory on the the virtual drive C: and then the software installed from the temporary location. When this was done all software installed without further problem.
Software that had to be installed from the virtual drive C included: AutoCAD LT98, Dreamweaver 3, Corel Office 2000.