HOWTO: Running IE6, IE7 and IE8 On Ubuntu Intrepid (8.10) Using VirtualBox +

Intro

Being able to check how stuff behaves in various versions of Internet Explorer is unavoidable. Switching to Ubuntu recently made me painfully aware of that fact (again).

This (somewhat illustrated) HOWTO details what one must do in order to be able to easily test their stuff in various versions of Internet Explorer on Windows XP SP3 (without having to reboot, switch computers or paying someone else to do it) while still happily having only Ubuntu installed on their machine.

We’ll be using Sun’s VirtualBox software and Microsoft’s Internet Explorer Application Compatibility VPC Images so lets get on with it.

Downloading and installing VirtualBox

If you don’t like the closed-source idea, compare the differences and try with the OSE version. Let me know how it goes.
Update: Phil’s results aren’t pretty. If you’re also seeing BSODs, you might want to try some workarounds.

If you’re comfortable with installing closed-source (binary) packages continue by adding Sun’s public key:

wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -

And adding the following line to /etc/apt/sources.list:

deb http://download.virtualbox.org/virtualbox/debian intrepid non-free

Install VirtualBox, accepting prompts (to create the vboxusers group and compile the kernel module):

sudo apt-get update && sudo apt-get install virtualbox-2.1

virtualbox-install-done2

Now add your user to the newly created vboxusers group:

vboxusers-properties

GUI way: System > Administration > Users And Groups > Unlock (type in your password) > Manage Groups > vboxusers > Properties. Check the checkbox next to your username. Close all (not by cancelling though).

CLI way:

groups <username>
# you will get a list of groups for that username
useradd <username> -g <first group in list> -G <second group>,<third group>,...,vboxusers

Reboot, or logout and log back in (might work). Reboot is the safe bet.

Downloading and extracting Microsoft’s Virtual Hard Disk images (VHD)

Current VHD images can be found here: http://www.microsoft.com/downloads/details.aspx?FamilyID=21eabb90-958f-4b64-b5f1-73d0a413c8ef&displaylang=en – the URLs will probably change (expire), but these VHDs should work until April 2009. I’m installing WindowsXP SP3 images, although Vista images are also available (check the previous link and explanations there for Vista).

(yes, the last two have lower-cased extensions, who knows why)

Create a folder to store the VHDs and download the one you need:

mkdir -p ~/VMs && cd ~/VMs
wget -bqc http://download.microsoft.com/download/B/7/2/B72085AE-0F04-4C6F-9182-BF1EE90F5273/IE8-XPSP3.EXE

Once they’re downloaded, extract them using unrar:

unrar e IE8-XPSP3.EXE XP_SP3_IE8/

xp-sp3-ie8-extract

You can delete the .exe files after extraction, they’re not needed any more.

Creating the Virtual Machine

Time to start VirtualBox (Applications > System Tools > Sun xVM VirtualBox). Create a new virtual machine by, you guessed it, choosing New. Name it and set the Operating System to Windows XP.

virtualbox-vm-naming

Assign some RAM (keep it under half of your physical RAM).

virtualbox-vm-memory

At the Virtual Hard Disk screen choose Existing to open the Virtual Media Manager. Choose Add and select the VHD file you extracted earlier. Choose Select to close the Virtual Media Manager.

Choose Next, then Finish and you’ll return to the main VirtualBox window which should now list your new Virtual Machine.

virtualbox-vm-wizard-final-step

Configuring the new Virtual Machine

Optional: select it, then choose Settings (available on right-click as well). General should be preselected on the left, increase the Video Memory Size and enable 3D acceleration on the Basic tab. Click OK to close the Settings, and click Start to power up your new virtual machine.

Once it boots, cancel out any dialogs, prompts, windows, etc.

Go to Devices > Install Guest Additions (it’s in the window’s menu bar). Follow the prompts accepting defaults and you’ll have installed VirtualBox additions. When prompted, reboot the machine. If it doesn’t prompt you, go to Machine > Reboot (menu bar again).
Once it reboots, click OK on the mouse pointer dialog thingy (you will not have to manually capture the mouse again, nice!).

Now go to Start > Run and paste the following in there:

D:\VBoxWindowsAdditions-x86.exe /extract /D=C:\Drivers

The above extracts some default drivers into the virtual machine’s c:\Drivers folder which we’ll need to set up the Ethernet adapter.

Now go to Start > Administrative Tools > Computer Management and select the Device Manager there. Navigate to Network Adapters, Ethernet Controller. Right click it and choose “Update Driver…“. Select “Yes, now and every…” and click Next. Select “Install from a list or specific location“, click Next. In the Location box paste in “C:\Drivers\x86\Network\AMD” or navigate to it manually. Click Finish.

You should have a working ethernet connection now. Fire up IE 8 and test it out!

Here’s a screenshot:
Screenshot of a Running IE8 install on Ubuntu using VirtualBox

If all went well, we’re done here!

Parting thoughts

When closing the VM choose “Save the machine state” if you wish to avoid waiting for all those boot screens the next time you start the VM.

Virtualization rules.

42 Responses to “HOWTO: Running IE6, IE7 and IE8 On Ubuntu Intrepid (8.10) Using VirtualBox”

  1. ..or you can do it this way IEs4Linux.

  2. @vuk: yep, tried it yesterday. Nowhere near as useful, unfortunately.

    It doesn’t support IE7, unless you wish to try the beta, which hacks IE7 rendering onto the IE6 user interface. Known issues in the beta: no flash, no cookies, rendering bugs, etc. Unusable for the things I usually need to test.

    Also, IE8 support seems non-existent right now.

  3. Using virtualbox from the Ubuntu repos (8.10) gives
    a blue-screen of death in a window, cycling without
    time to even read the error. Great, now BSOD in a window
    on Linux.

  4. Followed your directions carefully, still a cycling blue screen of death.

    Bug is here.

    http://www.virtualbox.org/ticket/420

    If like other sun products, bug fixes will never come.

    Tantilizing to run IE7 and IE8, but still not real.

    Phil

  5. @Phil: Thanks for the comments.

    If you manage to grab the error on the BSOD, you might be able to circumvent it (if it’s related to a certain .sys file) by renaming the .sys file in question during the first boot.

    As you’re about to start booting the newly created VM for the first time, click into it fast to capture the mouse and hold F8 as it boots.

    Select “safe mode with command prompt”. Cancel any wizards, missing file stuff, etc. as they come up. At the DOS prompt, enter:

    > cd \WINDOWS\system32\drivers
    > ren failing_sys_driver.sys failing_sys_driver.old

    Now restart the VM: Machine > Reset. Hopefully it’ll boot up because it won’t be able to load the failing driver :)

  6. Hi, this is great!
    One problem though…I would like to test some websites in Chinese but non-western text doesn’t seem to work. Any suggestions?

  7. @shadow: It works fine for me, just requires having an xp sp3 install cd handy. instructions here: http://www.chinese-tools.com/resources/windows-xp.html

  8. Zyt, I am counting minutes to your ubuntu-pissed-me-off-so-hard-i-had-to-reformat-my-hdd … time. :)

  9. @shadow: here’s a screenshot of my VM with non-western text.

    Getting an xp sp3 install iso shouldn’t be hard these days (there’s always torrent sites if all else fails). After you obtain it, the non-western text support is just a mount and a vm reboot away. gl

  10. I had to use wine on jaunty , seems that unrar is not installable on it

    $ wine /home/mariuz/Desktop/IE8-XPSP3.EXE

    and all went ok after that

  11. @zytzagoo : everything worked great for me. I experienced the same problems as Phil but your work around go everything straightened out. Thanks for this.

  12. About BSOD and missing netowrking, here is resolution on Ubuntu forum:
    http://ubuntuforums.org/showthread.php?t=1097080

    Start safe mode by (frantically) hitting F8 at Windows boot and choosing safe mode. Ignore all the ‘New hardware’ detected warnings (we will deal with those later). Start a command box and run the following command to disable the loading of processor drivers:
    sc config processor start= disabled
    (note the space between ‘=’ and ‘disabled’!)
    Restart the virtual Windows, it should now boot all the way to the Windows Desktop.

    …it’s also guide for running M$ images in VBox, but using converter to

    Turn the VPC image(s) into (a) VMWare image(s) (which is/are readable by VirtualBox)
    qemu-img convert -f vpc image.vhd -O vmdk image.vmdk

    but dunno why since Vbox is reading also .VHD files (VPC images!?) as pointed in this article. At least mine does > by SUN – not opensource.

  13. I have followed this tut and have gotten IE8 installed and working. However i am having difficulty adding IE7 and IE6. What are the steps needed to add IE7 and IE6.

  14. @napoleon: It should be the same, provided you extract the corresponding .vhd files, and create corresponding virtual machines for each one.

    If you’re thinking about running all of them on one single VM, perhaps you can try installing Multiple_IE on your working IE8 VM, and see if that works out.

  15. @ZYTZAGOO, Its still not happening so i figured i’ll tell you how i went about it, you’ll tell me where i went wrong.

    I have a dir called VMs in my home folder. In that dto adirectory i have 3 sub folders each with a VHD one for each IE (6 – 8).
    I have already setup a VM for IE8, so to Add IE6, I select
    New>Next. I enter a name IE6_WIN_XP_SP3.
    I leave the Memory intact at 192MB on the Virtual Hard Disk.
    Since I already have the VHD for IE6, I Click on Existing>Add then I navigate to the folder containing the VHD for IE6. However I get a failed to open the hard disk error mesaage. This is because a hard disk with the same UUID already exist. And this is where i get stuck.

    I hope you know what i am doing wrong

  16. @napoleon: Try converting the other two images using this guide: http://ubuntuforums.org/showthread.php?t=1097080

    Basically, you’re at this point now:

    $ sudo apt-get install qemu
    (download + install)

    $ cd ~/VMs/IE6_OR_IE7
    $ qemu-img convert -f vpc image.vhd -O vmdk image.vmdk

    (it takes a while)

    After that, proceed to mount the new .vmdk image file, it will have a new UUID and all should work exactly as before.

    It could be a lot simpler if Microsoft supplied different UUIDs, or if undocumented & unsupported “VBoxManage internalcommands sethduuid ” command actually worked for .vhd images (output says UUID is changed, but it isn’t. For other types of images it works).

    Enjoy your new multi IE setup :)

  17. […] Several readers reported running into troubles trying to install multiple VMs with different IE versions (following my previous howto). […]

  18. any idea why my mouse becomes disabled both in the VM and out, whilst running the VHD for XP_SP3_IE8, my host machine is Ubuntu 8.1 (Intrepid)

    am i missing drivers or something else, anyone know?

  19. solved my problem don’t worry bout it.

    turns out instead of defining the mouse as USB, I had to create a blank filter

  20. Got the blue screen of death at first. Then followed your advice for the workaround, didn’t work. So I followed the advice offered by Matic and it worked!

    Until the next time I started my computer. It no longer works at all. I get this:
    /home/tracy/VMs/XP_SP3_IE8/XP SP3 with IE8 2009-Apr.vhd is not accessible. Or something to that affect.

    It seems that it can not access the file in order to get the virtual box going. Any ideas why?

  21. @tracy: Could it be that the .vhd expired? Try grabbing a new one from Microsoft’s site (http://www.microsoft.com/downloads/details.aspx?FamilyID=21eabb90-958f-4b64-b5f1-73d0a413c8ef&displaylang=en). The new images there should be valid until August 31, 2009.

    HTH

  22. […] Hkratno poganjanje IE 6.0, IE 7.0 ter IE 8.0 na Ubuntu […]

  23. […] article, and […]

  24. WOW! You just saved me from having to restart my system and boot up WinXP everytime I needed to test a webpage in IE8. I’ve tried installing IE8 with Wine and while the installation seemed to complete successfully I still haven’t been able to load a single webpage in IE8 running on wine. VirtualBox did the trick! Although you may want to update your instructions for VirtualBox 3.0.4. I installed VB 3.0.4 on Kubuntu 9.04 (jaunty) amd64 and everything went flawlessly. Many thanks! This guide was an incredible time saver.

  25. I got Windows 7 Ultimate (RC-1) to run on Virtual Box. Installs and works like a dream. By the time the Windows 7 license expires in April 2010 I would have myself got rid of Windows…. so good till then … No need to install XP, Windows 7 has got it all, like IE8, WMP 11, etc. I even got ANSYS to run on the Windows 7 operating in Virtual Box!

  26. I can’t use the IE8-XP-SP3 VM as it asks me for a windows key activation after installation is completed. Is there a way to get rid of this? thx

  27. Ran into the same license issue. Just wondering what people did. I have a valid windows license on my machine — although half the time I just use ubuntu. Can I use that, or am I in violation of some microsoft EULA if I do?

  28. It seems the newest VMs are requiring activation for some reason. Don’t know if there’s a way to get rid of it for now, other than perhaps using your valid license key.

    Here’s a thread with others experiencing the same issue on VirtualBox forums: http://forums.virtualbox.org/viewtopic.php?f=2&t=21712 (maybe someone over there discovers something new)

  29. […] unter Linux hiermit nicht möglich. Hierfür gibt es jedoch andere Möglichkeiten. Schau hier: Beschreibung zur Installation 21.11.2009 15:32 | Entwicklung […]

  30. […] Shared HOWTO: Running IE6, IE7 and IE8 On Ubuntu Intrepid (8.10) Using VirtualBox | zytzagoo’s den.. […]

  31. I hope this thread is not too old for questions.

    I am trying to follow these steps. I found a more recent/current IE8 image at:

    http://www.microsoft.com/downloads/details.aspx?FamilyId=21EABB90-958F-4B64-B5F1-73D0A413C8EF&displaylang=en

    I downloaded the IE8-on-Vista image.

    My problem is that the virtualbox drivers do not appear to be compatible: Every time I startup the virtual machine, I get a bunch of windows for “New Hardware found / find drivers” for everything from the sound care, to the Ethernet Controller.

    I did follow the steps about installing the “Guest Additions” and extracting drivers to C:\Drivers; however, for each and every new hardware detected I select C:\Drivers (include subfolders) and am told no compatible drivers are found.

    Also, the steps on this page for manually updating the Ethernet drivers likewise say “no Driver was found” even after I manually navigate to the folder.

  32. If you have an old IE image, downloaded in 2009, that has expired, you can boot in “safemode with networking” by holding down F8 at boot, and following the prompts. All other
    instructions work.

  33. Im using Ubuntu too and Im into web development.

    Virtualbox sucks!!! Try using VMware Player: http://www.vmware.com/products/player/
    Install it and create Virtual machine with Windows XP, there you can install all browsers and programs you use. And then, you can synchronize folder in Virtual Windows XP with htdocs in Ubuntu. So when you change files in Virtual Windows they will be changed in Ubuntu too. And you can install Adobe Photoshop or any software for Windows you need. And all files can be synchronized and accessible from both Windows and Ubuntu.

    And if you are using compiz :D you can put Windows on one side of cube in full screen, so you can switch them with cool desktop cube effect :)

    Here is example of my desktop, look at 2:30 to see Virtual windows in action : http://www.youtube.com/watch?v=eJ-9v5WgEvk

    I tried everything and this is the best solution. I use virtual Windows for Front-End (xhtml/css/js) there I can test it in all browser, and then I joust switch to Ubuntu to code PHP :)

    Hope you find this useful.
    Im happy to see developers moving to Linux :)

  34. […] http://zytzagoo.net/blog/2009/03/20/howto-running-ie6-ie7-and-ie8-on-ubuntu-intrepid-810-using-virtu… […]

  35. Thanks! This worked great. The only hassle was ringing up microsoft for the activation.

  36. Yes, that thing about the Drivers step is needed, if you want to connect to the outside world which is much needed.

    Also I had to call microsoft, but they did not give me further problems and just gave me the ID over the phone. This is very good and they can give it to anyone who asks.

    Experience: At first I thought the activation thing was a dead end but it was not.
    Also if you are looking for the password it should be inside your VPC_EULA.txt so please look for it. If after installing your Windows tries to ask for a CD or something just ignore it if you have enabled the network, that is the important part, all others are not.
    Also the Additons, make sure that is the first step you do before trying anything else. It will be easy to install it only from the menu of virtualbox.

  37. actually when I now installed ie7 I was able to right from the get go activate my windows provided that I installed the additons and also extracted the network drivers, then everything was done through the network and I did not have to go with microsoft on the phone !!!

  38. thanks for sharing :)

  39. Thanks for your steps. They helped me a lot, although I was unable to extract the VHD files using unrar. I was able to use Wine to run the executable file and extract the VHD file.

  40. When prompted, reboot the machine. If it doesn’t prompt you, go to Machine > Reboot (menu bar again).

    Don’t reboot before activating the network! This will avoid the activation problem.

  41. thx,…
    btw can it work with wine?

  42. newer problem arose because of the lack of network drivers on the new images from microsoft

    now I solved this before downloading and mounting the drivers into vbox however I can’t remember the exact steps, and I am wanting to do that again…