Running Chrome OS as Virtual Machine on VMware and VirtualBox

12

We’ve shown you how to re-purpose your old laptop to a ChromeBook. Now let’s see how you can set up and test out the Chrome OS in a virtualization environment if you don’t have a spare machine to play with.

Setting up Chrome OS on VMware Player or Workstation

First of all, head over to Built by Hexxeh to download the latest Chromium OS Vanilla build. Click the VMware download icon on the latest Build listed on the page. The download file is about 300MB which consists of 2 VMware virtual machine files.

Once you have it downloaded, extract the content from the zip file to a convenient place, such as your VM folder or just inside your download folder.

Right-click the vmx file and open with Notepad, or your favorite text editor, i.e. Notepad++ in my case.

Right-click vmx file and open in text editor

And add a line ethernet0.virtualDev = "e1000" at the end of the file. Save and close the file.

Add a line in vmx file

Now, double-click the vmx file to open it in VMware Player or Workstation. And power it up. Optionally, you can change the setting to increase memory or the Process core if you want to have a better performance.

A few moments later, the initial setup wizard pops up, w/ Ethernet as one of the network option available. Follow the wizard, and you will have a working Chrome OS ready to serve you in a moment.

Chromium OS - initial setup

Setting up Chrome OS on VirtualBox

Now, let’s see how to set it up in VirtualBox, since VMware may not be always everyone’s choice.

Go to the Hexxeh’s Chromium OS page, and download the VirtualBox image from the latest build listed on the page. And extract it to a convenient location.

Then, open up VirtualBox, click New to create a new virtual machine, then give a name, increase the Memory size, and select the downloaded virtual image as an existing virtual hard drive file.

VirtualBox - Create Virtual Machine - 2014-01-07 16_27_27

Go to Settings to change a few things before launching it.

  • In System section, under Motherboard tab, select PS/2 mouse as the pointing device.
  • In System section under Processor tab, check Enable PAE/NX option.
  • In Network section, select Intel Pro /1000MT Desktop as the Adapter Type, and enable the Network Adapter.

And now fire it up and see if it rocks.

So which one runs better? At least, in my own test environment, running Chrome OS on VMware seems to be smoother and more responsive.

12 COMMENTS

  1. The Hexxeh builds are almost a year out of date, are there newer versions? Also these builds lack most of things that make Chrome OS useful ie. flash etc.

    • Yes, that’s true. I have been looking too, actually, but haven’t found anything useful so far. But even if I found one that’s more recent I probably still won’t be able to use flash due to the license issue. As far as I know, the builds compiled from Google’s code base don’t have Flash plugin built in.

      • FYI. There WAS a method to install the full Chrome OS, by installing the Chromium build, setting a flag in the terminal then it would upgrade to the latest full Chrome OS build. But that method started to fail about a year ago, I don’t know if it’s because the Hexxeh builds are so out of date. Shame.

          • http://zzsethzz.blogspot.co.uk/2013/02/install-chromium-upgrade-it-to-chrome.html

            and

            http://arnoldthebat.co.uk/wordpress/chromium-os/

            Maybe jumping off points. ‘Arnold the Bat’ builds seem more up-to-date than Hexxeh’s.

          • thanks, that’s great info.

            Apparently, these builds are made from Google’s code base as well, so no Flash support out of the box. Including flash in the build doesn’t seem to be a straightforward job. I will take look ArnoldtheBat’s site more closely.

          • The ArnoldtheBat versions, though newer have problems with VMs. If you use the Hexxeh build and follow the instructions here:

            http://practicalchrome.chirpdash.com/2013/11/playing-with-chrome-os-in-vm.html

            You may have some luck, running the 4suhf script TAKES AGES on VirtualBox, but give it 5-10 mins and all 22 images come up. The trick is to use a Chromium OS partition which is big enough to hold the Chrome OS recovery image which is big. The instructions above explain that you need to edit the 4suhf script to use /home (after setting ownership for the chronos user). I’m trying it now, but the method is roughly what I used to get a full Chrome OS working – including Pepper (Flash) and PDF support etc.

  2. How to get the Chrome OS in VirtualBox:

    This procedure will allow you to run the full Chrome OS on VirtualBox, it is complicated, if you are not familiar with entering commands in Linux (which Chrome OS runs) and tools like vi, do not attempt it.

    First download the latest Chromium OS Vanilla from Hexxeh’s website and install in VirtualBox as per usual instructions, boot up the virtual machine but do not login to Chromium yet.

    Now switch to Chromium’s console (not terminal). On my Linux box from inside the VM, press Right CTRL (to simulate CTRL+ALT) and F2. You should see a fullscreen console.

    Log into the console, username: chronos, password: facepunch (remember this password).

    We will tell Chromium OS that it is Developer mode. Type:

    sudo touch /mnt/stateful_partition/.developer_mode

    Enter the password (facepunch) whenever needed.

    We are going to upgrade to the full Chrome OS by using the Chromebook recovery images, they do not fit on the small partitions available so we will take ownership of /home and do the update from there. Type:

    cd /home

    sudo chown chronos /home

    wget http://goo.gl/4suhf

    The last step downloads an installer script called 4suhf. We must use the UNIX editor vi to tell the script to run from /home instead of the default location – or it will fail due to a lack of free space. Type:

    vi 4suhf

    Using vi change:

    WORKDIR=${WORKDIR:-/home/chronos/user/tmp.crosrec}

    to:

    WORKDIR=${WORKDIR:-/home}

    Press [ESC] :w to save and [ESC] :q to quit (you should know how to use vi to do this really)

    We are now ready to upgrade, type:

    sudo bash 4suhf

    The script will load the names of (currently 22) Chrome OS devices, you MUST WAIT for the list to appear completely, do not interfere, press any key or break the process. It can take 5-10 minutes (I’ve no idea why it’s so slow). Go get a coffee and watch some TV or something.

    When done you will see a list of all the current Chrome OS devices, choose a number corresponding to the recovery image you want to retrieve. I chose the one for the HP ChromeBook 14, which worked with VirtualBox. A download will begin.

    After the download, it will start overwriting the Chromium VM disk, leave it to finish. When complete you will get an error message, that is fine, you’ve re-written the whole OS leaving the system unstable. Reboot the VM.

    It should boot fairly quick compared to Chromium OS, but you WILL receive a error about a Factory Error because of a malformed hardware ID. This is because Chrome OS is not running on real hardware, you can click ‘skip for now’. This will appear each time you boot, but you can safely ignore it.

    You can now log into Chrome OS. It will be slow on VirtualBox as the display and virtual hardware is not optimised, but I have found it faster than Chromium OS on VirtualBox, I wrote this tutorial with it.

LEAVE A REPLY

Please enter your comment!
Please enter your name here