Now, before asking yourselves "Why in the world should I install Windows on Linux?", think about the cases when you need both of them for your business. Either you develop websites and you must test them for your clients on every possible browser out there or you are a software developer and you need to test your application on both operating systems, and let's say you can't afford to buy two PCs or you don't have the space to have two machines in your home, then this is the perfect method in order to have Linux and Windows at the same time on the same PC. I've tested the method below for a couple of weeks now, so I can assure you this is by far the most fast, powerful, simple and low-cost method youre gonna find.
Things youre gonna need:
1. Ubuntu Edgy (6.10) Linux
2. Windows XP
4. At least 1 GB RAM
I am not gonna teach you guys how to install Ubuntu in this guide. However, the installation of Ubuntu is a very easy and straightforward task, so let's start with the installation of VirtualBox. VirtualBox by InnoTek is an extremely feature rich, high performance product for enterprise customers, and it is also the only professional solution that is freely available as Open Source Software under the terms of the GNU Public License (GPL).
Step 1 - Install VirtualBox
Download the VirtualBox .deb file for Ubuntu Edgy, from here. After the download has finished, install the file like this:
Open a console and type...
sudo dpkg -i VirtualBox_1.3.6_Ubuntu_edgy_i386.deb
Step 2 - Configure VirtualBox
This is a very important part of the entire process, because you'll not be able to use VirtualBox and you will have no idea why. When the installation is over, VirtualBox kernel module will start and it will let you know that you must be part of the vboxusers group in order to use the virtual machine. To achieve this task, type the following command in the console:
Note: Replace < userid > with your user name (e.g. sudo usermod -G vboxusers -a marius).
Now logout, log back in and you'll be able to use VirtualBox.
Step 3 - Setup a VM (virtual machine)
This is a wizard based task and very easy to achieve. To help you create a virtual machine for the Windows XP operating system youre gonna install, I've made some screenshots, please check them out below. However, I strongly suggest putting around 512 RAM for the virtual machine and creating a 3.5 GB hard disk image.
After you've created the virtual machine, you'll see on the main window of VirtualBox, the settings of this VM. First of all, click on "General" option and enhance the Video Memory to 32 MB, then click on "Audio" and select "OSS Audio Driver". Now, click on "CD/DVD-ROM" option and check the box where it says "Mount CD/DVD Drive" and select the first option "Host CD/DVD Drive", then click OK to close the settings window. Put the Windows XP CD into your CD/DVD-ROM drive and click on the Start button, in order to start the virtual machine and to install Windows XP.
I am also not gonna teach you how to install Windows XP in this guide, I think you know why. When the Windows XP installation is over, you can remove the CD from your optical drive and you can safely use Windows on Linux.
Step 5 - Some little tricks
Tip 1: When you are in the virtual Windows XP machine for the first time, I suggest you go to "Devices -> Install Guest Additions..." and follow the installation wizard in order to have a virtual graphics driver that will enable video resolutions up to 6400 x 1200 pixels and a very nice feature called Mouse Integration, which works like this: when you move the mouse pointer into the virtual machine zone, you can work there and when you exit, you can use the Linux system; so no need to press a key or a combination of keys to release the mouse from the virtual machine, like in other VMs.
Tip 2: If you set the Windows XP resolution to 1280x1024 (like your Linux resolution; maybe some of you still have 1024x768 or other resolution) and hit the Right CTRL + F key combination, you will have Windows XP exactly like on a real PC. Please check the screenshots below for a better understanding.