728x90 AdSpace

Latest News

Powered by Blogger.

Blog Archive

Sunday 3 March 2013

Unleash your Chromebox: How to dual-boot Ubuntu Linux on your Chrome OS device

Google’s new Chromebox has some compelling features for large-scale IT shops. Capable of providing solid, secure performance at a reasonable price with almost no administrative overhead, they will no doubt find their way onto trading floors and into hospitals and universities, among other places. For many of the rest of us, the Chromebox, and the Chromebook before it, are a waste of perfectly good hardware. The Chromebox given out at Google I/O, for example, comes with a Core i5 processor, 4GB of RAM, and a 16GB SSD. It also has plenty of USB and video ports as well as a built-in speaker. That’s more than enough muscle to run a full-on OS like Linux instead of trying to live within the tight, web-only, confines of Chrome OS.


Hacker-friendly out of the box


Fortunately, Google and Samsung, who makes the ‘box, seem to have anticipated exactly this response, and left both the Chromebooks and Chromeboxes wide open to hacking. Not only can the devices be converted to dual-boot Chrome OS and Linux — nullifying the locked-down Chrome OS security model in the process of course — but it’s also easy to return them back to their locked-up factory defaults. What a dream setup! If only phones were this hacker friendly the word “brick” could pretty much disappear from the vocabulary on XDA.


Google Chromebook Developer Switch DiagramBeginning the journey to a hacked Chromebox is as simple as flipping the developer switch in the back — slightly hidden inside the Kensington lock slot. Most Chromebooks have their developer switch in a similar location like the one shown in this diagram. Flipping the switch and rebooting opens up a wealth of new possibilities for your device. Keep in mind that the process will erase any local data you have on the device, and takes about 10 minutes to complete.


Running the developer-mode BIOS


Once you’ve gotten your Chrome OS device rebooted with the developer switch turned on (which lets you access a developer shell), you’ll be able to run the developer mode BIOS to further customi e the unit. Start by pressing Ctrl-Alt-F2 when the device gets to the Select Language screen, to get a shell login prompt. Then log in with the username chronos(there is no password on the account) and become root using the command sudo bash(sudo simply tells the device you want to run its command line as root, and bash starts up a new shell). Finally, issue the command chromeos-firmwareupdate --mode=todevwhich switches your device to load the development BIOS by default. Note that if you’re using a Chrome-customi ed keyboard it might have “->” where the F2 normally is on a PC. Just press that instead of F2.


You’re now running the developer mode BIOS, which allows you to boot non-Google kernels or even to boot off an external USB device. If you have any trouble getting to this point, Google itself provides a helpful set of directions. You can always revert to the factory-default BIOS with the command chromeos-firmwareupdate --mode normal.


Now you’re ready to set up a partition for Ubuntu, by re-partitioning the unit’s solid-state drive. Start by rebooting the device, but before logging in use Ctrl-Alt-F2 again to get to a developer shell, and log in as chronos. You’ll want to make sure you’ve set your device up with a WiFi or wired Ethernet connection prior to this, to allow downloading the necessary scripts and Ubuntu build.


Once you’re logged in as chronos, run the commands wget http://goo.gl/oyjltand then sudo sh oyjlt. Wget grabs a shell script to re-partition your drive, and the sudo command executes it. The script works by shrinking the Chrome OS partition and creating one for Ubuntu in the newly created space. Assuming your device shipped with a 16GB SSD, the Chrome OS partition will initially be about 11GB. You can tell the script how much of that space to give Ubuntu. 8GB or 9GB will give you a couple GB of space for Ubuntu programs and files, after the distribution is installed, while still allowing Chrome OS a little bit of room for caching and local file storage.


Google Chromebox back panelThe re-partitioning script will run for as long as 10-15 minutes and then reboot and re-initiali e the Chrome OS partition — wiping out your settings and data in the process. You’ll be greeted by the same initial welcome screen you saw when you first powered on your Chromebox. After you have set up an internet connection for the device again and gotten to the Google login screen, you need to repeat the steps of going to a developer shell (Ctrl-Alt-F2), logging in as chronos, and retrieving and running the Ubuntu install script a second time (wget http://goo.gl/oyjlt; sudo sh oyjlt). This time the script will notice there is already a partition for Ubuntu and start downloading and loading Ubuntu for Chrome (ChrUbuntu).


Once the script has retrieved the 52 100MB files that make up the distribution (they total around 1-2GB compressed), it will reboot and ama ingly you’ll find yourself staring at an Ubuntu login. The default username is user, with the intuitive password user. At this point, you might want to acquaint yourself with our beginner’s guide to Linux commands.


Even though you’ll be in Ubuntu at this point, your device will still boot Chrome OS by default. To change the default boot OS, you can simply issue the command sudo cgpt add -i 6 -P 5 -S 1 /dev/sda to make Ubuntu the default, or sudo cgpt add -i 6 -P 0 -S 1 /dev/sda to make Chrome OS the default. If you’re having trouble, Jay Lee has provided a helpful step-by-step tutorial on the process for the Chromebook, which worked just as well when I used it on a Chromebox from Google I/O. Special thanks to Glenn Fisher for digging up the instructions and sorting out the keymappings.


Working with Ubuntu


Google Chromebox running Linux applications including Gimp and Blender, as well as Chrome, of course. Photo by David CardinalOnce I loaded Ubuntu on a Chromebox using this method, I could install and run just about any Linux application, even most of those requiring 3D hardware. The ChrUbuntu distribution includes OpenGL libraries for the Chromebook and Chromebox, and has apt-get in case you need some libraries that it doesn’t provide by default.


The only application I had trouble with was X-Plane, since it is not supported on the Intel HD 3000 graphics hardware in the Chromebox. Even CPU-intensive apps like Gimp and Blender ran without a hitch, and the quick access times of the SSD let them run more responsively than they would on many entry- and even mid-level PCs.


Obviously the small si e of the Ubuntu partition will become a limitation fairly quickly if you want to store a lot of data, but the USB ports on your Chrome device — the Chromebox features six of them — will come in handy for adding external hard drives or large flash drives to expand your storage. Likewise the Chromebox is set up for dual monitor support, with two DisplayPort connectors and a DVI-I connector on its backplate.


Chromebox processor: Celeron or i5


There is some confusion about the processor in current Chromeboxes. Units currently for sale ship with an Intel Celeron B840 processor, an entry-level dual-core CPU clocked at 1.9GH . Those units have the model number XE300M22-A01US. The units at Google I/O, while looking identical on the outside, and having identical RAM and SSD, featured an Intel Core i5 2540M, clocked at 2.4GH . The i5 models have the number XE300M22-A02US. There have been some references to the Core i5 version selling for as much as $499, but it is also possible the distribution channel is going through some type of upgrade to the more powerful units.


Either version has plenty of power to run Linux, but the A02 model certainly compares more favorably to the $599 Mac Mini, with a similar processor and more RAM. While the Chromebox’s 16GB SSD isn’t anywhere near the capacity of the Mac Mini’s 500GB hard drive, it’s nearly instant access makes for much faster booting and snappier response when web browsing or using applications. So if you’re looking for a well-designed, small, piece of hardware to run Linux, Google’s Chromebox is certainly an intriguing option.


 



Unleash your Chromebox: How to dual-boot Ubuntu Linux on your Chrome OS device
  • Blogger Comments
  • Facebook Comments

0 comments:

Post a Comment

Item Reviewed: Unleash your Chromebox: How to dual-boot Ubuntu Linux on your Chrome OS device Description: Rating: 5 Reviewed By: Unknown
Scroll to Top