Giter Club home page Giter Club logo

ievms's Introduction

Overview

Microsoft provides virtual machine disk images to facilitate website testing in multiple versions of IE, regardless of the host operating system. With a single command, you can have IE6, IE7, IE8, IE9, IE10, IE11 and MSEdge running in separate virtual machines.

Click here to lend your support to ievms and make a donation at pledgie.com!

Quickstart

Just paste this into a terminal:

curl -s https://raw.githubusercontent.com/xdissent/ievms/master/ievms.sh | bash

Requirements

  • VirtualBox > 5.0 (http://virtualbox.org), select 'command line utilities' during installation
  • Curl (Ubuntu: sudo apt-get install curl)
  • Linux Only: unar (Ubuntu: sudo apt-get install unar)
  • Patience

NOTE Use ievms version 0.2.1 for VirtualBox < 5.0.

Installation

1.) Install VirtualBox and check the Requirements

2.) Download and unpack ievms:

3.) Launch Virtual Box.

4.) Choose ievms image from Virtual Box.

The OVA images are massive and can take hours or tens of minutes to download, depending on the speed of your internet connection. You might want to start the install and then go catch a movie, or maybe dinner, or both.

Recovering from a failed installation

Each version is installed into ~/.ievms/ (or INSTALL_PATH). If the installation fails for any reason (corrupted download, for instance), delete the appropriate ZIP/ova file and rerun the install.

If nothing else, you can delete ~/.ievms (or INSTALL_PATH) and rerun the install.

Specifying the install path

To specify where the VMs are installed, use the INSTALL_PATH variable:

curl -s https://raw.githubusercontent.com/xdissent/ievms/master/ievms.sh | env INSTALL_PATH="/Path/to/.ievms" bash

Passing additional options to curl

The curl command is passed any options present in the CURL_OPTS environment variable. For example, you can set a download speed limit:

curl -s https://raw.githubusercontent.com/xdissent/ievms/master/ievms.sh | env CURL_OPTS="--limit-rate 50k" bash

Disk requirements

A full ievms install will require approximately 69G:

Servo:.ievms xdissent$ du -ch *
 11G    IE10 - Win7-disk1.vmdk
 22M    IE10-Windows6.1-x86-en-us.exe
 11G    IE11 - Win7-disk1.vmdk
 28M    IE11-Windows6.1-x86-en-us.exe
1.5G    IE6 - WinXP-disk1.vmdk
724M    IE6 - WinXP.ova
717M    IE6_WinXP.zip
1.6G    IE7 - WinXP-disk1.vmdk
 15M    IE7-WindowsXP-x86-enu.exe
1.6G    IE8 - WinXP-disk1.vmdk
 16M    IE8-WindowsXP-x86-ENU.exe
 11G    IE9 - Win7-disk1.vmdk
4.7G    IE9 - Win7.ova
4.7G    IE9_Win7.zip
 10G    MSEdge - Win10-disk1.vmdk
5.1G    MSEdge - Win10.ova
5.0G    MSEdge_Win10.zip
3.4M    ievms-control-0.3.0.iso
4.6M    lsar
4.5M    unar
4.1M    unar1.5.zip
 69G    total

You may remove all files except *.vmdk after installation and they will be re-downloaded if ievms is run again in the future:

$ find ~/.ievms -type f ! -name "*.vmdk" -exec rm {} \;

If all installation related files are removed, around 47G is required:

Servo:.ievms xdissent$ du -ch *
 11G    IE10 - Win7-disk1.vmdk
 11G    IE11 - Win7-disk1.vmdk
1.5G    IE6 - WinXP-disk1.vmdk
1.6G    IE7 - WinXP-disk1.vmdk
1.6G    IE8 - WinXP-disk1.vmdk
 11G    IE9 - Win7-disk1.vmdk
 10G    MSEdge - Win10-disk1.vmdk
 47G    total

Bandwidth requirements

A full installation will download roughly 12.5G of data.

NOTE: Reusing the XP VM for IE7 and IE8 (the default) saves an incredible amount of space and bandwidth. If it is disabled (REUSE_XP=no) the disk space required climbs to 95G (49G if cleaned post-install) and around 22G will be downloaded. Reusing the Win7 VM on the other hand (also the default), saves tons of bandwidth but pretty much breaks even on disk space. Disable it with REUSE_WIN7=no.

Features

Clean Snapshot

A snapshot is automatically taken upon install, allowing rollback to the pristine virtual environment configuration. Anything can go wrong in Windows and rather than having to worry about maintaining a stable VM, you can simply revert to the clean snapshot to reset your VM to the initial state.

Guest Control

VirtualBox guest additions are installed after each virtual machine is created (and before the clean snapshot) and the appropriate steps are taken to enable guest control from the host machine.

Resuming Downloads

If one of the comically large files fails to download, the curl command used will automatically attempt to resume where it left off. Unfortunately, the modern.IE download servers do not support resume.

Reusing XP VMs

IE7 and IE8 ship from MS on Vista and Win7 respectively. Both of these images are far larger than the IE6 XP image, which also technically supports IE7 and IE8. To save bandwidth, space and time, ievms will reuse (duplicate) the IE6 XP VM image for both. Virtualbox guest control is used to run the appropriate IE installer within the VM. The clean snapshot includes the updated browser version.

NOTE: If you'd like to disable XP VM reuse for IE7 and IE8, set the environment variable REUSE_XP to anything other than yes:

curl -s https://raw.githubusercontent.com/xdissent/ievms/master/ievms.sh | env REUSE_XP="no" bash

Reusing Win7 VMs

Currently there exists a bug in VirtualBox (or possibly elsewhere) that disables guest control after a Windows 8 virtual machine's state is saved. To better support guest control and to eliminate yet another image download, ievms will re-use the IE9 Win7 image for IE10 and IE11 by default. In addition, the Win7 VMs are the only ones which can be successfully "rearmed" to extend the activation period.

NOTE: If you'd like to disable Win7 VM reuse for IE10, set the environment variable REUSE_WIN7 to anything other than yes:

curl -s https://raw.githubusercontent.com/xdissent/ievms/master/ievms.sh | REUSE_WIN7="no" bash

NOTE: It is currently impossible to install IE11 without reusing the Win7 virtual machine.

Control ISO

Microsoft's XP image uses a blank password for the IEUser, which disallows control via Virtualbox's guest control by default. Changing a value in the Windows registry enables guest control, but requires accessing the VM's hard drive. A solution is to boot the VM with a special boot CD image which attaches the hard disk and edits the registry. A custom linux build has been created based on the ntpasswd bootdisk which makes the required registry edits and simply powers off the machine. The ievms script may then use Virtualbox guest controls to manage the VM.

The control ISO is built within a Vagrant Ubuntu VM. If you'd like to build it yourself, clone the ievms repository, install Vagrant and run vagrant up. The base ntpasswd boot disk will be downloaded, unpacked and customized within the Vagrant VM. A custom linux kernel is cross-compiled for the image as well.

Acknowledgements

  • modern.IE - Provider of IE VM images.
  • ntpasswd - Boot disk starting point and registry editor.
  • regit-config - Minimal Virtualbox kernel config reference.
  • uck - Used to (re)master control ISO.

License

None. (To quote Morrissey, "take it, it's yours")

ievms's People

Contributors

cust0dian avatar davbo avatar jaytaph avatar jubianchi avatar krisalyssa avatar marcandreappel avatar nicklevett avatar rcmachado avatar singingwolfboy avatar terryp avatar tordans avatar tuomassalo avatar whiteinge avatar xdissent avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ievms's Issues

Issue installing ievms

Here's the error I get:

(...)
Extracting from Windows_Vista_IE7.part06.rar

... Windows Vista.vhd 99%
Windows Vista.vhd - CRC failed
Extracting Windows Vista.vmc OK
Total errors: 1

ERROR: Failed to extract Windows_Vista_IE7.part01.exe to /Users/bytte/VirtualBox VMs/.ievms/vhd/IE7/Windows Vista.vhd, unrar command returned error code 0

Not sure what's going wrong?

Install failed with incomplete downloads

When installing IE7 (Mac OS X 10.8.0), 2 of the 6 rar part files were incomplete downloads. Got the error below. Any new attempts to install with the script fails.

Workarounds:

  • Remove the ~/.ievms/chd/IE# folder that is being installed to start all downloads over
  • Manually download the incomplete file parts into the IE folder, and remove the ".vhd" and ".vmc" files.

Thanks for sharing this script!

Install error:

Extracting Windows Vista.vhd 22%

Extracting from Windows_Vista_IE7.part02.rar

... Windows Vista.vhd 26%
Windows Vista.vhd - CRC failed
Unexpected end of archive
Windows Vista.vhd : packed data CRC failed in volume Windows_Vista_IE7.part02.rar

Extracting from Windows_Vista_IE7.part03.rar

Unexpected end of archive
Windows Vista.vhd : packed data CRC failed in volume Windows_Vista_IE7.part03.rar

Extracting from Windows_Vista_IE7.part04.rar

Extracting from Windows_Vista_IE7.part05.rar

Extracting from Windows_Vista_IE7.part06.rar

Extracting Windows Vista.vmc OK
Total errors: 3

ERROR: Failed to extract Windows_Vista_IE7.part01.exe to /Users/xxxxx/.ievms/vhd/IE7/Windows Vista.vhd, unrar command returned error code 0

IE6 expire after 3 days not 30 days

I have try the IE6 Wm and at the first launch it said it will expire in 3 days.
After configuring and rebooting I can't log anymore it said I need to activate Windows.

Option to use aria2c

I live in Asia, and downloading from download.microsoft.com happens at a dismal 5kb/sec. I used aria2c to download these files manually and I got 365kb/s on a 3mbps connection.

The command I used was:

echo http://download.microsoft.com/download/B/7/2/B72085AE-0F04-4C6F-9182-BF1EE90F5273/Windows_7_IE9.part0{1.exe,2.rar,3.rar,4.rar,5.rar,6.rar,7.rar} | tr ' ' '\n' | aria2c --max-connection-per-server=16 --max-concurrent-downloads=16 --split=16 -i -

Perhaps there should be an option to use a different downloader than curl?

Issue with windows xp.vdi on Mac OSX

Get the following error message when running the script:

Extracting Windows XP.vhd 99%
Windows XP.vhd - CRC failed
Unexpected end of archive
Total errors: 2

ERROR: Failed to extract Windows_XP_IE6.exe to /Users/lloyd/.ievms/vhd/IE6/Windows XP.vhd, unrar command returned error code 0

I realise this is probably not an issue with your script but am logging for visibility of 'an issue'.

Failed on OSX 10.6.6

Below is the output after running the ievsm.sh script. (Other output is missing because I'd run it a few times before, and found I needed to upgrade my version of VBox, so I already had some things downloaded.)

VBox Version: 4.0.12 r72916

thanks!

Administrators-iMac-2:HardDisks Admin$ curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | bash
Checking for VirtualBox
Checking for Oracle VM VirtualBox Extension Pack
Pack no. 0:   Oracle VM VirtualBox Extension Pack
Building IE7 VM
Checking for existing VHD at /Users/Admin/.ievms/vhd/IE7/Windows Vista.vhd
Checking for existing IE7 VM
VBoxManage: error: Could not find a registered machine named 'IE7'
VBoxManage: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component VirtualBox, interface IVirtualBox, callee nsISupports
Context: "FindMachine(Bstr(VMNameOrUuid).raw(), machine.asOutParam())" at line 2158 of file VBoxManageInfo.cpp
Creating IE7 VM
Virtual machine 'IE7' is created and registered.
UUID: af538717-e19b-49c3-b135-1af50796dfc8
Settings file: '/Users/Admin/VirtualBox VMs/IE7/IE7.vbox'
Oracle VM VirtualBox Command Line Management Interface Version 4.0.12
(C) 2005-2011 Oracle Corporation
All rights reserved.

Usage:

VBoxManage storageattach    <uuid|vmname>
                            --storagectl <name>
                            [--port <number>]
                            [--device <number>]
                            [--type dvddrive|hdd|fdd]
                            [--medium none|emptydrive|
                                      <uuid>|<filename>|host:<drive>|iscsi]
                            [--mtype normal|writethrough|immutable|shareable|
                                     readonly|multiattach]
                            [--comment <text>]
                            [--passthrough on|off]
                            [--bandwidthgroup <name>]
                            [--forceunmount]
                            [--server <name>|<ip>]
                            [--target <target>]
                            [--tport <port>]
                            [--lun <lun>]
                            [--encodedlun <lun>]
                            [--username <username>]
                            [--password <password>]
                            [--intnet]

VBoxManage: error: Unknown option: --setuuid

fails to find VBoxGuestAdditions.iso

On Debian/unstable, after extracting:

Checking for existing IE7 VM
VBoxManage: error: Could not find a registered machine named 'IE7'
VBoxManage: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component VirtualBox, interface IVirtualBox, callee nsISupports
Context: "FindMachine(Bstr(VMNameOrUuid).raw(), machine.asOutParam())" at line 2322 of file VBoxManageInfo.cpp
Creating IE7 VM
Virtual machine 'IE7' is created and registered.
UUID: 3d7644fc-a583-4dc3-9573-08570439af10
Settings file: '/home/alex/.VirtualBox/Machines/IE7/IE7.vbox'
VBoxManage: error: Could not find file for the medium '/usr/share/virtualbox/VBoxGuestAdditions.iso' (VERR_FILE_NOT_FOUND)
VBoxManage: error: Details: code VBOX_E_FILE_ERROR (0x80bb0004), component Medium, interface IMedium, callee nsISupports
Context: "OpenMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, AccessMode_ReadWrite, fForceNewUuidOnOpen, pMedium.asOutParam())" at line 210 of file VBoxManageDisk.cpp
VBoxManage: error: Invalid UUID or filename "/usr/share/virtualbox/VBoxGuestAdditions.iso"

Launch of "unrar" failed: the PowerPC architecture is no longer supported.

ok, in part it’s my fault to have a really old version of unrar. :)

Extracting VHD from /Users/oliver/.ievms/vhd/IE7/Windows_Vista_IE7.part01.exe
Launch of "unrar" failed: the PowerPC architecture is no longer supported.

ERROR: Failed to extract Windows_Vista_IE7.part01.exe to /Users/oliver/.ievms/vhd/IE7/Windows Vista.vhd, unrar command returned error code 0

Script to copy hosts database over to VMs on OS X

It would be nice for OS X users if a script could be run to copy any IPs and hostnames (used for local development) in /etc/hosts over to C:/Windows/System32/drivers/etc/hosts across all VMs. Not sure if this is even possible, but it would save a lot of time.

keyboard layout

Maybe you should add into readme that's a f****** US keyboard by default. Cause there's no way to set up before lon into the system, we must use a virtual keyboard to enter password -_-

bash: line 219: mkisofs: command not found

there was no notice that mkisofs is required, so installation failed until i installed app-cdr/cdrtools (using gentoo). a note under the requirements would be nice, and a check at the beginning even better.

OS X 10.6.8 and download issues

As will become quickly obvious, I am the greenest of "newbys" and need to have my head examined for even attempting this download. But, it sounds like a wonderful solution to accessing IE from Mac. I have a Macbook Pro, 2.53 GHz i5 with not the best download speed on cable modem.

Here's the situation. I installed VB 4.1.2.
At 2pm (U.S. EDT) 10/11/11, I started terminal and pasted in the IE7 version from oxdaily.com.
Today, 10/12/11, it is still installing part 3, and tells me it will take another 7d 08h! Admittedly, my lousy cable modem download speed is a paltry 1.5 mbps, but still -- can this time be true?

And now, in the last few minutes since noting this, this error message appears:
curl: (56) Failure when receiving data from the peer (? - perhaps I accidentally stalled it or ?)

It is now downloading part 4, with only an hour to go.

I know nothing about programming, terminal, and the hidden underbelly of computers. I'd like to, but in the meantime, please explain in words I will understand.

I just wanted IE so I could apply for some jobs at my state's employment online site. The only browsers it supports are IE and Netscape - an issue that could take up entire volumes.

Thank you, in advance, for any help you can send my way. I am leaving for vacation tomorrow, not sure what to do about this.

Bvter

feature: any plans to create script for parallels or fusion too?

The only good thing about VirtualBox is that its free. Its terribly slow and consumes much cpu power and memory.
Windows on parallels starts up in matter of few seconds, while on virtual box it takes over a minute and my whole computer acts like its going to explode :)

It would be nice to have this script for parallels or fusion..
I tried to do it once, but got stuck when having to convert images to proper format.

Failed to initialize COM!

I get this error when trying to run ievms on a fresh VBox install (4.1.10) on OS X (10.6.8). It occurs after it attempts to install the extension pack with error code 0.

I've checked that the extension pack is not already installed, and I'm able to run the file manually and install successfully.

Here is the command I called:

sudo curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="9" INSTALL_PATH="/Volumes/Warehouse/VMs" bash

Any ideas? Is there a way to bypass this step and continue with the VM installation?

estimate on disk space required?

disk space gets eaten a lot by VMs, do you have an idea on what's required for 6, 7, 8, 9 ?

also the snapshot technique probably reduces disk space a lot. smart move!

this script seems absolutely amazing btw.. thx mucho

starting virtual machine halts at 20%

OS : Ubuntu Lucid
VirtualBox Version : Latest 4.1.8 Deb for Lucid

http://imgur.com/JWPDJ - screenshot

$ tail -F ~/.VirtualBox/VBoxSVC.log

00:02:57.545 nspr-2 ERROR [COM]: aRC=VBOX_E_INVALID_VM_STATE (0x80bb0002) aIID={5eaa9319-62fc-4b0a-843c-0cb1940f8a91} aComponent={Machine} aText={Machine is not locked for session (session state: Unlocked)}, preserve=false
00:02:57.929 nspr-3 WARNING [COM]: aRC=NS_ERROR_FAILURE (0x80004005) aIID={dab4a2b8-c735-4f08-94fc-9bec84182e2f} aComponent={Host} aText={VirtualBox is not currently allowed to access USB devices. You can change this by adding your user to the 'vboxusers' group. Please see the user manual for a more detailed explanation}, preserve=true
00:02:57.956 nspr-2 WARNING [COM]: aRC=NS_ERROR_FAILURE (0x80004005) aIID={dab4a2b8-c735-4f08-94fc-9bec84182e2f} aComponent={Host} aText={VirtualBox is not currently allowed to access USB devices. You can change this by adding your user to the 'vboxusers' group. Please see the user manual for a more detailed explanation}, preserve=true
00:02:58.027 nspr-3 ERROR [COM]: aRC=VBOX_E_IPRT_ERROR (0x80bb0005) aIID={5eaa9319-62fc-4b0a-843c-0cb1940f8a91} aComponent={SessionMachine} aText={Saved screenshot data is not available (VERR_NOT_SUPPORTED)}, preserve=false
00:02:58.030 nspr-3 WARNING [COM]: aRC=NS_ERROR_FAILURE (0x80004005) aIID={dab4a2b8-c735-4f08-94fc-9bec84182e2f} aComponent={Host} aText={VirtualBox is not currently allowed to access USB devices. You can change this by adding your user to the 'vboxusers' group. Please see the user manual for a more detailed explanation}, preserve=true
00:03:01.477 nspr-2 WARNING [COM]: aRC=NS_ERROR_FAILURE (0x80004005) aIID={dab4a2b8-c735-4f08-94fc-9bec84182e2f} aComponent={Host} aText={VirtualBox is not currently allowed to access USB devices. You can change this by adding your user to the 'vboxusers' group. Please see the user manual for a more detailed explanation}, preserve=true

2nd Last line in ~/VirtualBox VMs/IE7/Logs/VBox.log

00:00:02.529 HWACCM: No VT-x or AMD-V CPU extension found. Reason VERR_VMX_IN_VMX_ROOT_MODE

Please add resume capability

Currently if i abort a download in the middle, Next time while i resume the script tries to extract the half done download assuming it's complete!

setuuid failing

Fails for me on Ubuntu with:

Checking for existing IE7 VM
VBoxManage: error: Could not find a registered machine named 'IE7'
VBoxManage: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component VirtualBox, interface IVirtualBox, callee nsISupports
Context: "FindMachine(Bstr(VMNameOrUuid).raw(), machine.asOutParam())" at line 2158 of file VBoxManageInfo.cpp
Creating IE7 VM
Virtual machine 'IE7' is created and registered.
UUID: 4732f641-4cc5-4117-b282-fcfcdfbc0fcb
Settings file: '/home/bjs/VirtualBox VMs/IE7/IE7.vbox'
Oracle VM VirtualBox Command Line Management Interface Version 4.0.4_OSE
(C) 2005-2011 Oracle Corporation
All rights reserved.

Usage:

VBoxManage storageattach    <uuid|vmname>
                            --storagectl <name>
                            --port <number>
                            --device <number>
                            [--type dvddrive|hdd|fdd]
                            [--medium none|emptydrive|
                                      <uuid>|<filename>|host:<drive>|iscsi]
                            [--mtype normal|writethrough|immutable|shareable|
                                     readonly|multiattach]
                            [--comment <text>]
                            [--passthrough on|off]
                            [--bandwidthgroup <name>]
                            [--forceunmount]
                            [--server <name>|<ip>]
                            [--target <target>]
                            [--port <port>]
                            [--lun <lun>]
                            [--encodedlun <lun>]
                            [--username <username>]
                            [--password <password>]
                            [--intnet]

VBoxManage: error: Unknown option: --setuuid

A quick [Google search][1] makes it seem like the command should be:

VBoxManage internalcommands sethduuid blah

[1] http://community.spiceworks.com/scripts/show/352-virtualbox-set-uuid

Failing with Ubuntu 11.04 and IE9

Everything went good during download and installation even if it asked me to install "virtualbox-ose-dkms" which i did.

But when launching VirtualBox and the VM the black screen tells me "FATAL: Could not read from the boot medium! System halted.". So it cannot be launched at all.

I'm on Ubuntu 11.04, trying to install IE9 with the command :

"curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="9" bash"

Do you have any idea of this issue ?

Failure setting up the VMs: "Invalid UUID or filename"

After installing the extras pack, and trying to run the script, it gave me an error.

Here's the pertinent part:
Checking for existing IE7 VM VBoxManage: error: Could not find a registered machine named 'IE7' VBoxManage: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component VirtualBox, interface IVirtualBox, callee nsISupports Context: "FindMachine(Bstr(VMNameOrUuid).raw(), machine.asOutParam())" at line 2322 of file VBoxManageInfo.cpp Creating IE7 VM Virtual machine 'IE7' is created and registered. UUID: 77ad550d-4284-4d9d-b5ca-f3dd7928287c Settings file: '/home/damon/VirtualBox VMs/IE7/IE7.vbox' UUID changed to: f5c9cb75-eedf-4bdd-b866-f6ca67895452 VBoxManage: error: Could not find file for the medium '/usr/share/virtualbox/VBoxGuestAdditions.iso' (VERR_FILE_NOT_FOUND) VBoxManage: error: Details: code VBOX_E_FILE_ERROR (0x80bb0004), component Medium, interface IMedium, callee nsISupports Context: "OpenMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, AccessMode_ReadWrite, fForceNewUuidOnOpen, pMedium.asOutParam())" at line 210 of file VBoxManageDisk.cpp VBoxManage: error: Invalid UUID or filename "/usr/share/virtualbox/VBoxGuestAdditions.iso"

Here's the full output: https://gist.github.com/1356233

UUID mismatch when launching VM

When I try to open any of the installed VMs, I get the following error:

Failed to open a session for the virtual machine IE7.

UUID {5a5e730b-42e1-8b48-90c0-c1b9248e1722} of the medium '.../.ievms/vhd/IE7/Windows Vista.vhd' does not match the value {3097458d-2ebe-4560-8b8f-3e6d73780a6e} stored in the media registry ('.../Library/VirtualBox/VirtualBox.xml').

Result Code: NS_ERROR_FAILURE (0x80004005)
Component: Medium
Interface: IMedium {53f9cc0c-e0fd-40a5-a404-a7a5272082cd}

Windows 7.vhd - CRC failed

IE7 and IE8 work great, but IE9 fails to extract. I have tried this 4 times and have the same results. Any thought?

............................................................
Windows 7.vhd - CRC failed
Unexpected end of archive
Windows 7.vhd : packed data CRC failed in volume Windows_7_IE9.part06.rar
Cannot find volume Windows_7_IE9.part07.rar
Total errors: 3

ERROR: Failed to extract Windows_7_IE9.part01.exe to /Users/gabemarihugh/.ievms/vhd/IE9/Windows 7.vhd, unrar command returned error code 0

Bad URL for Oracle VM VirtualBox Extension Pack when using distro provided virtualbox package (ubuntu)

Here is what I get when I try to run script:

$ IEVMS_VERSIONS="9" bash ievms.sh
Checking for VirtualBox
Checking for Oracle VM VirtualBox Extension Pack
Installing Oracle VM VirtualBox Extension Pack from /home/gsg/.ievms/Oracle_VM_VirtualBox_Extension_Pack-4.1.2_Ubuntu-38459.vbox-extpack
VBoxManage: error: RTZipGzipDecompressIoStream failed: VERR_ZIP_BAD_HEADER
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ExtPackFile, interface IExtPackFile, callee nsISupports
Context: "Install(fReplace, NULL, ptrProgress.asOutParam())" at line 1083 of file VBoxManageMisc.cpp

ERROR: Failed to install Oracle VM VirtualBox Extension Pack from /home/gsg/.ievms/Oracle_VM_VirtualBox_Extension_Pack-4.1.2_Ubuntu-38459.vbox-extpack, error code (0)

'VBoxManage -v' gives: 4.1.2_Ubuntur38459

It tries to download the following, which fails:

http://download.virtualbox.org/virtualbox/4.1.2_Ubuntu/Oracle_VM_VirtualBox_Extension_Pack-4.1.2_Ubuntu-38459.vbox-extpack

This doesn't happen with the package directly from virtualbox.org.

I'm not sure if you want to enhance the parsing for the version to deal with provider specific version strings, but there you go.

no extpack?

When I tried it, it failed to install the Oracle VM VirtualBox Extension Pack. Looking into it, I found out that my VBoxManage does not have either "VBoxManage list extpacks" or "VBoxManage extpack install" commands

I'm running on Gentoo with VirtualBox 3.2.12_OSEr68302

Error on downloading extension pack: "World writable: '/Applications'

OS X 10.7.2, VirtualBox 4.1.6. Tried sudoing, didn't help.

Progress state: NS_ERROR_FAILURE
VBoxManage: error: Failed to install "/Users/samuelgrossberg/.ievms/Oracle_VM_VirtualBox_Extension_Pack-4.1.6-74713.vbox-extpack": The installer failed with exit code 1: VBoxExtPackHelperApp: error: World writable: '/Applications'

ERROR: Failed to install Oracle VM VirtualBox Extension Pack from /Users/samuelgrossberg/.ievms/Oracle_VM_VirtualBox_Extension_Pack-4.1.6-74713.vbox-extpack, error code (0)

Installing on Ubuntu Fails

I am unable to install.

curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="9" bash 
Checking for VirtualBox
Checking for Oracle VM VirtualBox Extension Pack
Downloading Oracle VM VirtualBox Extension Pack from http://download.virtualbox.org/virtualbox/4.1.0_Ubuntu/Oracle_VM_VirtualBox_Extension_Pack-4.1.0_Ubuntu-38065.vbox-extpack to /home/sean/.ievms/Oracle_VM_VirtualBox_Extension_Pack-4.1.0_Ubuntu-38065.vbox-extpack
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   292  100   292    0     0    502      0 --:--:-- --:--:-- --:--:--   502
Installing Oracle VM VirtualBox Extension Pack from /home/sean/.ievms/Oracle_VM_VirtualBox_Extension_Pack-4.1.0_Ubuntu-38065.vbox-extpack
VBoxManage: error: RTZipGzipDecompressIoStream failed: VERR_ZIP_BAD_HEADER
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ExtPackFile, interface IExtPackFile, callee nsISupports
Context: "Install(fReplace, NULL, ptrProgress.asOutParam())" at line 1065 of file VBoxManageMisc.cpp

ERROR: Failed to install Oracle VM VirtualBox Extension Pack from /home/sean/.ievms/Oracle_VM_VirtualBox_Extension_Pack-4.1.0_Ubuntu-38065.vbox-extpack, error code (0)

I am using VirtualBox 4.1.0_Ubuntu-38065

Critical Error when start IE 7 , 8 , 9

I have been using ievm for a long time.
But It has stop working since yesterday updated Virtual Box on my Mac OS X 10.6.8

It looks like it can't load crcdisk.sys when I see it loading in Safe mode.
All of a sudden same problem happened in IE 7, 8 , 9.

After getting them reinstall from downloading the vhd again, the problem still not solve.

IE6 Support

Hi,

I see that IE6 support is disabled but I can't see an explanation as to why this is. Is there a reason? Would it be possible for me to manually add IE6 afterwards or is there a problem that blocks IE6 support?

Awesome script BTW, just running in the background now... looking like it's going to take several days!

Cheers,
OP

Password for VMs

To be able to login i need to enter a password for the admin account. What could that password be ?

Curl SSL certificate verify fails when trying to dl the win images

Hi all,

On a mac here, 10.6.8. Running curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="7" bash from terminal results in a very early exit from the process. I couldn't see the error and so made the call -v verbose and get the following:

  • About to connect() to raw.github.com port 443 (#0)
  • Trying 207.97.227.243... connected
  • Connected to raw.github.com (207.97.227.243) port 443 (#0)
  • SSLv3, TLS handshake, Client hello (1):
    } [data not shown]
  • SSLv3, TLS handshake, Server hello (2):
    { [data not shown]
  • SSLv3, TLS handshake, CERT (11):
    { [data not shown]
  • SSLv3, TLS alert, Server hello (2):
    } [data not shown]
  • SSL certificate problem, verify that the CA cert is OK. Details:
    error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
  • Closing connection #0

Can some files be deleted?

After installation, I have some files in ~/VirtualBox VMs and these files in ~/.ievms/vhd:

~/.ievms/vhd $ ls -al IE7/
total 36275648
drwxr-xr-x  10 justin  staff   340B 26 Oct 16:08 ./
drwxr-xr-x   3 justin  staff   102B 26 Oct 16:48 ../
-rw-r--r--   1 justin  staff    13G 26 Oct 16:08 Windows Vista.vhd
-rw-r--r--   1 justin  staff    13K 11 May 11:49 Windows Vista.vmc
-rw-r--r--   1 justin  staff   700M 26 Oct 14:13 Windows_Vista_IE7.part01.exe
-rw-r--r--   1 justin  staff   700M 26 Oct 14:34 Windows_Vista_IE7.part02.rar
-rw-r--r--   1 justin  staff   700M 26 Oct 14:59 Windows_Vista_IE7.part03.rar
-rw-r--r--   1 justin  staff   700M 26 Oct 15:21 Windows_Vista_IE7.part04.rar
-rw-r--r--   1 justin  staff   700M 26 Oct 15:41 Windows_Vista_IE7.part05.rar
-rw-r--r--   1 justin  staff   679M 26 Oct 16:00 Windows_Vista_IE7.part06.rar

I'm wondering...

a) can I safely delete or archive elsewhere the .rar files (and anything else?)
b) could ievms automatically delete these as part of a clean-up process post-install

I'm on an SSD, so 4.2GB of space is worth trying to save, especially multiplied across IE7, IE8, IE9.

/usr/share/virtualbox/VBoxGuestAdditions.iso does not exist on Debian, causes crash

Debian testing distro, VBox 4.1.8

Instead what happens is the first time you select "Install Guest Additions", it comes up saying "Do you want to download them?". It does not then place them at /usr/share/virtualbox/VBoxGuestAdditions.iso

Maybe
VBoxManage storageattach "${vm}" --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium "${ga_iso}"

could be replaced with something like
if [-f ${ga_iso} ] VBoxManage storageattach "${vm}" --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium "${ga_iso}" else VBoxManage storageattach "${vm}" --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium emptydrive fi
That way, at least the drive is ready for when the user selects "Install Guest Additions" by hand

No clean Snapshot

i got no snapshot at install. Just take it me, hop it's works in the future to reset the countdown.

also the image come with trial expired, is it normal ?

choose destination folder

is there a parameter to set where i would like to download the big files? my /home partition is small and i want them to be in another place. thanks in advance

Debian fails to download Vbox Extpack

In Debian (well, Crunchbang actually, but it's a derivative), the initial download of the extension pack is failing. It is trying to get http://download.virtualbox.org/virtualbox/4.0.8_Debian/Oracle_VM_VirtualBox_Extension_Pack-4.0.8_Debian-71778.vbox-extpack which doesn't exist.

If I manually get http://dlc.sun.com.edgesuite.net/virtualbox/4.0.8/Oracle_VM_VirtualBox_Extension_Pack-4.0.8-71778.vbox-extpack and save it as the filename that ievms is trying to use then it appears to accept this download and continue with the process.

Say's Done But Does Not Download

I'm on a Mac, 10.7.1 (latest) with the latest Virtual Box installed.

I opened up terminal and ran: curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh

Which resulted in the following, but nothing else happened. And I missing something?

#!/usr/bin/env bash

# Caution is a virtue
set -o nounset
set -o errtrace
set -o errexit
set -o pipefail

log()  { printf "$*\n" ; return $? ;  }

fail() { log "\nERROR: $*\n" ; exit 1 ; }

create_home() {
    ievms_home="${HOME}/.ievms"
    mkdir -p "${ievms_home}"
    cd "${ievms_home}"
}

check_system() {
    # Check for supported system
    kernel=`uname -s`
    case $kernel in
        Darwin|Linux) ;;
        *) fail "Sorry, $kernel is not supported." ;;
    esac
}

check_virtualbox() {
    log "Checking for VirtualBox"
    hash VBoxManage 2>&- || fail "VirtualBox is not installed! (http://virtualbox.org)"

    log "Checking for Oracle VM VirtualBox Extension Pack"
    if ! VBoxManage list extpacks | grep "Oracle VM VirtualBox Extension Pack"
    then
        version=`VBoxManage -v`
        ext_version="${version/r/-}"
        short_version="${version/r*/}"
        url="http://download.virtualbox.org/virtualbox/${short_version}/Oracle_VM_VirtualBox_Extension_Pack-${ext_version}.vbox-extpack"
        archive="Oracle_VM_VirtualBox_Extension_Pack-${ext_version}.vbox-extpack"

        if [[ ! -f "${archive}" ]]
        then
            log "Downloading Oracle VM VirtualBox Extension Pack from ${url} to ${ievms_home}/${archive}"
            if ! curl -L "${url}" -o "${archive}"
            then
                fail "Failed to download ${url} to ${ievms_home}/${archive} using 'curl', error code ($?)"
            fi
        fi

        log "Installing Oracle VM VirtualBox Extension Pack from ${ievms_home}/${archive}"
        if ! VBoxManage extpack install "${archive}"
        then
            fail "Failed to install Oracle VM VirtualBox Extension Pack from ${ievms_home}/${archive}, error code ($?)"
        fi
    fi
}

download_unrar() {
    case $kernel in
        Darwin) url="http://www.rarlab.com/rar/rarosx-4.0.1.tar.gz" ;;
        Linux) url="http://www.rarlab.com/rar/rarlinux-4.0.1.tar.gz" ;;
    esac
    archive="rar.tar.gz"

    log "Downloading unrar from ${url} to ${ievms_home}/${archive}"
    if ! curl -L "${url}" -o "${archive}"
    then
        fail "Failed to download ${url} to ${ievms_home}/${archive} using 'curl', error code ($?)"
    fi

    if ! tar zxf "${archive}" -C "${ievms_home}/" --no-same-owner
    then
        fail "Failed to extract ${ievms_home}/${archive} to ${ievms_home}/," \
            "tar command returned error code $?"
    fi

    hash unrar 2>&- || fail "Could not find unrar in ${ievms_home}/rar/"
}

check_unrar() {
    PATH="${PATH}:${ievms_home}/rar"
    hash unrar 2>&- || download_unrar
}

build_ievm() {
    case $1 in
        6) 
            url="http://download.microsoft.com/download/B/7/2/B72085AE-0F04-4C6F-9182-BF1EE90F5273/Windows_XP_IE6.exe"
            archive="Windows_XP_IE6.exe"
            vhd="Windows XP.vhd"
            vm_type="WindowsXP"
            fail "IE6 support is currently disabled"
            ;;
        7) 
            url="http://download.microsoft.com/download/B/7/2/B72085AE-0F04-4C6F-9182-BF1EE90F5273/Windows_Vista_IE7.part0{1.exe,2.rar,3.rar,4.rar,5.rar,6.rar}"
            archive="Windows_Vista_IE7.part01.exe"
            vhd="Windows Vista.vhd"
            vm_type="WindowsVista"
            ;;
        8) 
            url="http://download.microsoft.com/download/B/7/2/B72085AE-0F04-4C6F-9182-BF1EE90F5273/Windows_7_IE8.part0{1.exe,2.rar,3.rar,4.rar}"
            archive="Windows_7_IE8.part01.exe"
            vhd="Win7_IE8.vhd"
            vm_type="Windows7"
            ;;
        9) 
            url="http://download.microsoft.com/download/B/7/2/B72085AE-0F04-4C6F-9182-BF1EE90F5273/Windows_7_IE9.part0{1.exe,2.rar,3.rar,4.rar,5.rar,6.rar,7.rar}"
            archive="Windows_7_IE9.part01.exe"
            vhd="Windows 7.vhd"
            vm_type="Windows7"
            ;;
        *)
            fail "Invalid IE version: ${1}"
            ;;
    esac

    vm="IE${1}"
    vhd_path="${ievms_home}/vhd/${vm}"
    mkdir -p "${vhd_path}"
    cd "${vhd_path}"

    log "Checking for existing VHD at ${vhd_path}/${vhd}"
    if [[ ! -f "${vhd}" ]]
    then

        log "Checking for downloaded VHD at ${vhd_path}/${archive}"
        if [[ ! -f "${archive}" ]]
        then
            log "Downloading VHD from ${url} to ${ievms_home}/"
            if ! curl -L -O "${url}"
            then
                fail "Failed to download ${url} to ${vhd_path}/ using 'curl', error code ($?)"
            fi
        fi

        rm -f "${vhd_path}/*.vmc"

        log "Extracting VHD from ${vhd_path}/${archive}"
        if ! unrar e "${archive}"
        then
            fail "Failed to extract ${archive} to ${vhd_path}/${vhd}," \
                "unrar command returned error code $?"
        fi
    fi

    log "Checking for existing ${vm} VM"
    if ! VBoxManage showvminfo "${vm}"
    then
        
        case $kernel in
            Darwin) ga_iso="/Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso" ;;
            Linux) ga_iso="/usr/share/virtualbox/VBoxGuestAdditions.iso" ;;
        esac

        log "Creating ${vm} VM"
        VBoxManage createvm --name "${vm}" --ostype "${vm_type}" --register
        VBoxManage modifyvm "${vm}" --memory 256 --vram 32
        VBoxManage storagectl "${vm}" --name "IDE Controller" --add ide --controller PIIX4 --bootable on
        VBoxManage storagectl "${vm}" --name "Floppy Controller" --add floppy
        VBoxManage storageattach "${vm}" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium "${vhd_path}/${vhd}" --setuuid ""
        VBoxManage storageattach "${vm}" --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium "${ga_iso}"
        VBoxManage storageattach "${vm}" --storagectl "Floppy Controller" --port 0 --device 0 --type fdd --medium emptydrive
        VBoxManage snapshot "${vm}" take clean --description "The initial VM state"
    fi
}

check_system
create_home
check_virtualbox
check_unrar

all_versions="7 8 9"
for ver in ${IEVMS_VERSIONS:-$all_versions}
do
    log "Building IE${ver} VM"
    build_ievm $ver
done

log "Done!"CB:~ cb$ 

Path and IE version commits 28/9/11

Hi,
Great job, thanks. installed IE8 without hitch yesterday following post at http://osxdaily.com/2011/09/04/internet-explorer-for-mac-ie7-ie8-ie-9-free/
But since your commits last night to allow install path, the suggested commands no longer work.

To get the IE7 to dl I had to create the destination folder and then use this cmd with full path to downlaod folder: curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | INSTALL_PATH="/Users/my-user-name/.ievms" IEVMS_VERSIONS="7" bash

Keep up the good work.
Simon

ps. Would love to see download continue after interrupt, I guess that's more to do with how you fetch images from MS.

can't download ievms through terminal

I think my company network/proxy settings are preventing the download when I paste any of those lines into Terminal.

When I paste any of them in and hit return, there's a fairly long pause and the command prompt comes up again.

I’ve tried manually downloading all of the Win7/IE9 files from MS, but while the first exe creates the .vhd, the following 6 all produce copies of the same .vmc when I try to unrar them (using the Unarchiver), and I’m guessing they should combine to produce a single .vmc. Any ideas how I can unpackage all of the files together or get around the problem in terminal?

Unable to boot on OS X 10.6.8

When I try to boot the IE9 Image the boot process stops with this message
"FATAL: Could not read from the boot medium! System halted."

No harddrives attached to VMs after installation

After running the install script (and taking care to avoid the --setuuid bug as seen here: #3), I noticed that neither the IE7 nor IE8 VM had any storage attached.

Despite that, I went ahead and created storage from the VHDs in ~/.ievms/vhd and started up the machines. I noted that there were no 'clean' snapshots, but thought nothing of it. Once I tried to log in to any account, the VM declared that 30 days had passed and that this was not a Microsoft Genuine Advantage install.

Is there a way to associate the snapshots with the VMs (either from within VirtualBox or the command line)? I'm looking for how the vhds are supposed to be associated with the VMs, but I haven't seen that yet etiher.

Relevant details:

Mac OS X 10.7.1
VirtualBox 4.0.12

Cannot install VirtualBox Extension Pack on Ubuntu

I ran the script and it downloaded Oracle_VM_VirtualBox_Extension_Pack-4.1.2-73507.vbox-extpack to ~/.ievms and tried to install it.

The command failed with:

Progress state: NS_ERROR_FAILURE
VBoxManage: error: Failed to install "/home/james/.ievms/Oracle_VM_VirtualBox_Extension_Pack-4.1.2-73507.vbox-extpack": The installer failed with exit code 1:
VBoxExtPackHelperApp: error: The group is not a system group and it has write access to '/usr'

The same happens if I use the VirtualBox GUI to install the same extpack. I'm running Ubuntu 11.04.

virtualBox issue, window fail to start

Hi,

I am having trouble finding the right settings on Mac OS for the the vhds. Here's a screencap: http://imgur.com/jz2Wx

The error in the preview is: Windows failed to start. A recent hardware or software change might be the cause.

Can someone kindly help?

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.