Sign in with
Sign up | Sign in

Installing VirtualBox

How To: Windows XP Mode In...Ubuntu Linux?
By

In order to follow this guide, you need an installed Linux distribution (I use Ubuntu), a legitimate copy of Windows XP, familiarity with the XP installation, and Sun's VirtualBox virtualization software (free).

This guide begins with the assumption that you've already installed Linux on your system. If you need help with the installation process, go here for a refresher. I do not assume that you have any Linux knowledge, but you should be comfortable with PCs in general.

Test System Specs:

Operating System

64-bit Ubuntu 9.04 “Jaunty Jackalope”

Processor

2.0 GHz AMD Athlon 64 X2

Motherboard

Biostar NF61S-M2 TE

Memory

4GB DDR2-800MHz

Graphics

Nvidia GeForce 6100; integrated graphics, 128MB shared

Storage

250GB SATA 3 Gb/s, 7,200 RPM


The first step to getting your very own XP Mode in Linux is to install virtual machine software. Since the point of this article is saving money, we're going with Sun Microsystem's free VirtualBox as our virtualization software. Click here and choose the appropriate .deb or .rpm file for your Linux distribution. I am using the 64-bit version of Ubuntu 9.04, so I'll need to click the AMD64 link next to Ubuntu 9.04 (“Jaunty Jackeloupe”). You can choose to either run or save the file.

Though it is free, this app is not open-source. This is the version of VirtualBox that contains proprietary code. If you only want open-source software on your system, you can use VirtualBox OSE (Open-Source Edition) instead. You can get VirtualBox OSE from Add/Remove in the Applications menu. Click here if you need a refresher on installing software in Ubuntu via a package manager. You can follow this guide to setup the OSE version, for the most part. Some of the steps will deviate slightly. Also, the screenshots may not represent exactly what is on your screen.

If you chose to save the file, double-click it when downloading completes. Click Install Package, then enter your password when prompted. When the Debconf window opens, just click Forward to continue installation. After the application finishes installing, click Close, and then exit the installer by closing the window. If you wish, you can now delete the .deb or .rpm by right-clicking on it and selecting Move to Trash.

Remember the Debconfig window? Now we have to add you to the list of authorized users in the “vboxusers” group so that any USB devices will work in the Windows XP VM. It's not just your Windows apps that you'll be able to use in the VM; devices too! Now, go to System/Administration/UsersandGroups.

In the user list highlight your user name by clicking on it, then click Unlock. In the screenshot, my user name is Adam Overa.

When prompted, enter your password and then click Authenticate. Now click Manage Groups. Scroll down until you see the group vboxusers, click it, then click Properties.

You should see the user list with check-boxes next to the user name of each user on your system. Check the box next to your user name and click OK. Now click Close, and then Close again. Now we need to log out, or restart for these changes to take effect. Click on your user name on the far right of the upper panel. Select Log Out to go to the Ubuntu login screen, or Restart to reboot.

Ask a Category Expert

Create a new thread in the Reviews comments forum about this subject

Example: Notebook, Android, SSD hard drive

Display all 124 comments.
This thread is closed for comments
Top Comments
  • 23 Hide
    void5 , October 7, 2009 6:26 AM
    You can't run Windows in virtual machine on Linux "all for free" - you still have to buy license to use Windows copy legally.
  • 23 Hide
    cmmcnamara , October 7, 2009 6:14 AM
    I applaud the promotion of Linux, but this can be done in Windows too....Virtualbox is multiplatform.
  • 20 Hide
    johnbilicki , October 7, 2009 6:24 AM
    How about some articles in regards to getting popular games to run on Linux distros? I finally got around to trying Wine and I was amazed as how insanely easy it was. A good article could convince many to migrate...and I'd love to see major releases start taking Linux as a serious gaming OS.
Other Comments
  • 23 Hide
    cmmcnamara , October 7, 2009 6:14 AM
    I applaud the promotion of Linux, but this can be done in Windows too....Virtualbox is multiplatform.
  • 2 Hide
    jsloan , October 7, 2009 6:22 AM
    xpm is nothing but an integrated microsoft virtual pc 2007, which microsoft makes available for free.

    i've been running w7 since day one and i have not found a reason to use xpm. windows 7 runs everything i've thrown at it.

    also, virtual box runs fine on w7, so there is no need for linux...
  • 20 Hide
    johnbilicki , October 7, 2009 6:24 AM
    How about some articles in regards to getting popular games to run on Linux distros? I finally got around to trying Wine and I was amazed as how insanely easy it was. A good article could convince many to migrate...and I'd love to see major releases start taking Linux as a serious gaming OS.
  • 23 Hide
    void5 , October 7, 2009 6:26 AM
    You can't run Windows in virtual machine on Linux "all for free" - you still have to buy license to use Windows copy legally.
  • 1 Hide
    lifelesspoet , October 7, 2009 6:30 AM
    So far I tried 3 games that didn't run in windows 7 but ran in wine. It seems from my example, the older the program is the more likely it will run in linux and less likely it will run in the latest version of windows.
    Also, virtual box doesn't support directx, so graphically intense programs will not run properly or at all.
  • 2 Hide
    JonathanDeane , October 7, 2009 7:03 AM
    I like my main machine (the one with the most oomph) to run Windows what ever flavor is the latest. Then I like to run Linux on older hardware since Windows tends to bloat over time and not work so well. The OS is just a tool. XP is almost to that Windows 98 stage where it lacks security and is getting slower with each patch and lacks the new shiny. RIP XP you where the best of the best in your day! Being OS agnostic gives you more tools to work with in your life learn to use them all properly and you will find you can do things you thought where too hard or too complex before. Maybe one day people will learn to love all OS's equally lol
  • 0 Hide
    bujcri , October 7, 2009 8:15 AM
    Very nice article, still, it doesn't mention anything about possibility of running 64 bit software or how many cpu cores virtual box can use (I saw from the picture that it could be more than one)
  • 8 Hide
    danny69t , October 7, 2009 8:22 AM
    Good article. Keep it up with Ubuntu "stuff" like this. How about making a short article about installing software from tar.gz ? I didn't manage to use them darn tarballs.

    "all the ways to customize your GUI, from panels to widgets and everything in-between. Don't worry, there will be a ton of transparency effects for those interested in cloning the Windows 7 GUI. There will even be some effects, like expo for Compiz Fusion, never before seen on a Windows machine."

    Can't wait for that article, Adam.
  • 8 Hide
    mitch074 , October 7, 2009 8:55 AM
    Please note:

    - the article does state that you need a valid XP install media - meaning, that you should have a Windows XP license with it. Say, the one that came with the computer you converted to Linux... Moreover, if you happen to install an 'update' version of Windows, you lose the right to install both the older and newer OS on the machine (check EULA) - so you'd need to spring for a 'full' version of either. Linux has no EULA (only the GPL, which essentially says 'use at will') so you can use the former OEM OS (presumably Win XP - lower-end Vista have EULA limitations) in a VM, IF KEPT ON THAT 'REAL' MACHINE.

    - DirectX acceleration is available in VirtualBox (this is not the case with VirtualPC), but it is experimental. Essentially, it creates an OpenGL context on the host OS (Linux or Windows), a virtual 3D device on the guest OS, provides a DirectX to OpenGL translator and a WGL to XGL passthrough (think Wine) - giving the guest OS accelerated OpenGL and DirectX capabilities. Note that currently, the OpenGL option is considered more stable than DirectX, because like Wine's WGL to XGL passthrough driver, there's (almost) no code translation required. As far as I know, there is no passthrough option available for DirectX (thus Windows on Windows has no advantage over windows on Linux - it's even worse, due to Windows on Linux making use of Linux's much faster I/O capabilities - my test results, not mine).

    - The vbox 'CPU cores' options defines how many cores are emulated on the host; as far as I know, vbox ain't multithreaded yet. Think SMP emulation for the host. You should also enable IO APIC emulation with it, and this may be unstable in WinXP.

    About .tar.gz packages: they can contain both binaries and source code; thing is, in Linux, it's often more practical to ship source code and make the user compile it, but the user has to know which is what. If we take Skype's example, there are two .tar.gz available: the 'dynamic' one will make use of local libraries already installed on your machine (mainly Qt), the 'static' is a complete package that doesn't require any extra install (but is a much bigger download). On Xvid's page though, the .tar.gz package only contains source code; you have to enter the directory that contains the UNIX-like source, and do 'magic':

    ./configure --help ## that parses the 'configure' script and recaps default compilation and install settings. Read it thoroughly. Don't forget the './', required to run the local version; otherwise, Linux will default to 'configure' located in /usr/bin, which is NOT the same.

    ./configure ## that checks for dependencies on the system and prepares the build; if it can't find a compiler or any other required dependency it'll abort: install GCC and whatever library is missing (you may need the -dev or -devel package). If it can't find NASM, an assembly optimizer, it'll revert to slow 'pure C' implementation - and say so. Thus, read ./configure's output. Install optional dependencies for those features you need. You may need to pass options defined in the --help.

    make ## that will actually start the compile job, according to the last ./configure run (some will actually run configure with default settings first; it is also possible that there is no ./configure script). It should take a few minutes depending on how fast your processor is.

    make install ## to be run as root. Will add libraries and binaries in default paths on your system, overwriting existing files. If run as user, will probably fail. You may run into dependency hell if you overwrite existing critical files.

    For actual, package-dependent instructions, read the README files that are found inside the package. Most will sum up the above, others may give different instructions.

    Some packages (mainly daily builds) will actually require tools like 'automake' that parse the current source files, create a ./configure script and run it.
  • -8 Hide
    Thanatopsis , October 7, 2009 9:04 AM
    "In order to follow this guide, you need an installed Linux distribution (I use Ubuntu), a legitimate copy of Windows XP, familiarity with the XP installation, and Sun's VirtualBox virtualization software (free). "

    You don't NEED a legitimate copy of XP. There's no reason this wouldn't work with any copy of it.
  • -5 Hide
    anamaniac , October 7, 2009 9:04 AM
    $100 for somethng you use everyday and is the base of everything you do is too expensive?
    Hell, I pay $100 for my shoes (I like having comfortable shoes that don't fall apart), and I replace them once a year, so once every 3-4 years for a new OS isn't bad. I use my computer more than my shoes...
  • 0 Hide
    anamaniac , October 7, 2009 9:08 AM
    On a side note, if I remember correctly, Win7 Home is $100 OEM and $250 OEM.
    These come with no support, but really, not like you'd use microsoft support anyways, especially if your a user using a linux distribution.
  • 7 Hide
    Anonymous , October 7, 2009 10:29 AM
    Really liked your article.
    VBox is improving really fast, is free, and can do everything VmWare does.
  • 2 Hide
    evongugg , October 7, 2009 11:58 AM
    Finally you can do your taxes in Ubuntu with the Virtual machine.

    You can install just about any version of Windows you want with a Virtual machine and more operating systems. See here for all the operating system supported.

    http://www.virtualbox.org/wiki/Guest_OSes
  • 8 Hide
    randomizer , October 7, 2009 12:37 PM
    Thanatopsis"In order to follow this guide, you need an installed Linux distribution (I use Ubuntu), a legitimate copy of Windows XP, familiarity with the XP installation, and Sun's VirtualBox virtualization software (free). "You don't NEED a legitimate copy of XP. There's no reason this wouldn't work with any copy of it.

    Are you suggesting that they actively promote piracy on a front page article? You must be joking.
  • 1 Hide
    bunz_of_steel , October 7, 2009 12:52 PM
    jsloan There is no need for your DA comments either! Gr8 article Adam!! Looking forward to pt2 maybe w/64bit multi-core difference comparisons with different memory allocations.
  • 0 Hide
    climber , October 7, 2009 12:59 PM
    I wonder if someone could switch their computer to linux, install the virtual box environment then install XP and get all the updates and everything to bring windows up to date, then install Ghost. Could one do a Ghost restore to that virtual PC to restore your drive to the virtual drive?
  • -2 Hide
    caamsa , October 7, 2009 1:40 PM
    Wouldn't it be easier to just dual boot windows and Ubuntu on the same disk? Then at start up you can just pick one or the other without all the hassles of using the virtual box.
  • 1 Hide
    adamovera , October 7, 2009 1:45 PM
    johnbilickiHow about some articles in regards to getting popular games to run on Linux distros? I finally got around to trying Wine and I was amazed as how insanely easy it was. A good article could convince many to migrate...and I'd love to see major releases start taking Linux as a serious gaming OS.

    Working on it, probably gonna be a series, hopefully starting by X-Mas.
Display more comments