What is Crouton?
Crouton stands for Chromium OS Universal Chroot Environment. It allows you to run full Ubuntu on top of Chrome OS. Unlike dual booting, you can easily switch between Ubuntu and Chrome OS with a keyboard shortcut, no reboots necessary.
Why install Crouton?
- Full Linux power. Linux is a powerful operating system that is highly customizable and has a library of great open source applications. If you’ve ever wanted to give Linux a try, now is your chance.
- Speedy and reliable. Crouton runs alongside Chrome OS and doesn’t skip a beat in terms of speed. The full Linux desktop is only a keyboard shortcut away so it is there only when you need it.
- Software and Games. Your Chromebook will be able to run full open source office applications among other software including Steam and Minecraft! The Chrome Web Store is not bad but it does not compare to installing full-fledged desktop applications and Steam games.
Caveat: Crouton works by creating a chroot, which is sort of like virtualization (but not quite). Since chroots allow for viewing your hardware devices, including the entire contents of memory which makes your Chromebook vulnerable to a root exploit. However, the benefits outweigh this caveat especially if you’ll use Linux only when you need it. You can also choose to encrypt your chroot. More info on this in the actual guide.
What Chromebooks are Compatible with Crouton?
Crouton works on ANY Chromebook, but for this guide, I will be installing it on a Broadwell based Intel i3 Toshiba Chromebook 2 (2015 Edition). However, you can use this guide for any Chromebook, the process is the same across the board.
Crouton vs Other Methods
Crouton isn’t the only method you can use to install Linux on your Chromebook. There are other ways to accomplish this each with their own pros and cons.
|Crouton (This Guide)||Runs alongside Chrome OS. You can easily switch between Linux and Chrome OS by a simple keyboard shortcut. Recommended for everyone and beginners.|
|ChrUbuntu||Traditional dual-boot environment. On boot, you can choose which operating system you want to run. Now defunct and not updated. See Chrx below.|
|Chrx||Traditional dual-boot environment. On boot, you can choose which operating system you want to run. Only works on some Chromebooks. Allows you to install several different distributions, including GalliumOS which is made specifically for Chromebooks. For advanced users.|
|Full Native Linux||Removes Chrome OS from your Chromebook and turns it into solely a Linux machine. May require you to work out several bugs after installation depending on the distribution you’re installing. Will require you to open up your Chromebook, remove BIOS write protection and flash it with a custom BIOS. For advanced users.|
How to Install Linux on any Chromebook (Crouton Method)
Now that you know the different ways of installing Linux on your Chromebook, we’ll move one to install it via Crouton. This comprehensive guide will guide you through each step with helpful tips along the way.
Basic overview of steps:
- Upgrade your SSD (optional)
- Enable Developer Mode
- Install Crouton
- Configure installation
- Enter chroot
- Optimize your installation
- Update drivers
- Install applications
- How to Log Out
Step One: Upgrade your SSD (optional)
Chromebooks by default do not come with a lot of internal storage space. After all, they’re meant to be primarily cloud-based devices. But with a full installation of Linux, you would benefit from having extra storage space for software, games, and media.
Some Chromebooks allow you to swap the internal SSD to a bigger one. Depending on the model of your Chromebook will determine if you are able to do this. I highly recommend it if your Chromebook is compatible.
I’ve written a guide on how to do this specifically for the Toshiba Chromebook 2 (2015) model here . The process is basically the same for other models but will vary when getting into the internals and the location of the actual drive.
Step Two: Enable Developer Mode
In order to install Crouton, your Chromebook will need to be in developer mode.
Follow my guide here for instructions on how to enable developer mode. It’s a pretty simple process.
Step Three: Install Crouton
Firstly, download Crouton by clicking here
Now, we will install Ubuntu via Crouton. Before doing this you should make a few decisions:
- Desktop Environment – Unity of Xfce?
Xfce is less graphic intensive and as such is recommended for lower end systems that have less processing power, such as Baytrail or Celeron models. If you have an Intel i3/i5/i7 Chromebook I recommend using Unity.
- Encryption vs. No Encryption?
If you would like to encrypt your chroot to add more security you can enable this option when installing Crouton. This will add an additional password prompt when entering Ubuntu.
- Enable Touch
If your Chromebook display doubles as a touch screen (eg Chromebook Pixel) you can turn this option on.
- Choose your Ubuntu release
This is entirely up to your personal preference but by default, Crouton will install Precise (Ubuntu 12.04). You may want to use Raring (13.04) or Trusty (14.04). I personally prefer Trusty because of its stability. For more information about Ubuntu releases, check here.
- Install browser extension and/or Xiwi
The Crouton browser extension allows you to have synchronized clipboards, the option of using Chromium OS to handle URLs and allows chroots to create graphical sessions as Chromium OS windows. The downside to running chroot in a tab is that it has graphical limitations and does not have enough power to run Linux games.
Once you have an idea of what you want you can begin installing Crouton by following these steps.
- Press Ctrl+Alt+T to bring up a terminal on your Chromebook.
- At the Terminal, run the following command to enter a Ubuntu shell:
- Next, you will type out your install script. This will change based on the decisions you made above.
For example, if you want to install Ubuntu 14.04 (Trusty) that uses the Unity desktop environment and browser extension, you would type this:
sudo sh ~/Downloads/crouton -r trusty -t unity,extension
I recommend the above for Intel i3/i5/i7 Chromebooks and the following for Celeron based Chromebooks:
sudo sh ~/Downloads/crouton -r trusty -t xfce,extension
Breakdown of parameters
As you can see from the install scripts above, there are many options when installing Crouton. In this section, I will break down what each of the parameters means so that you can install the exact setup you want.
- The -r parameter specifies which Ubuntu release you want to use. Run
sh ~/Downloads/crouton -r list
to list the recognized releases and which distros they belong to. Replace trusty with the release you want to install (eg -r precise or -r raring).
- The -t parameter denotes target. You must always type this in your install script.
- Decide on the unity or Xfce desktop environment and add it after typing -t. (eg -t unity or -t xfce)
-eparameter is used when you run crouton to create an encrypted chroot or encrypt a non-encrypted chroot.
- Add touch to the end of your install script to enable your installation for touchscreen Chromebooks.
- Add extension for the Crouton browser extension to work
- Add xiwi to be able to run Ubuntu in a browser tab
- Read about more parameters/commands on the official Github page.
Once you type your install script and press enter, Ubuntu should begin to install!
Switching between Ubuntu and Chrome OS
- Press Ctrl+Alt+T to bring up a terminal on your Chromebook.
- Type shell and press enter.
- At the terminal type:
Depending on which desktop environment you installed.
- If you chose encryption, enter your password.
- If you used xiwi and you’re running in a browser tab, you’ve now got Ubuntu running in one of your Chrome tabs. You can resize it as you see fit. Remember that Chrome has a fullscreen mode and a dedicated button to toggle this on and off.
If you’re not running it in a tab, then you’ll be in fullscreen by default. To change back and forth between Ubuntu and Chrome OS, press and hold the following keys:Control+Alt+Shift+Forward
- Congratulations! You’ve now installed Ubuntu and figured out how to switch back and forth from operating systems.
Updating your chroot
Ubuntu may stop working after a Chrome OS update. If that’s the case, update all the installed targets using the following command.
In Chrome OS, open a terminal using Ctrl + Alt + T, then type “shell” and:
sudo sh -e ~/Downloads/crouton -u -n chrootname
Where “chrootname” is the name of the chroot you want to update. For example, if you’ve installed Ubuntu 12.04 Precise, the default chrootname is “precise”, or if you installed Ubuntu 14.04 you would use “trusty.”
The journey isn’t over yet, you’ll have to optimize your installation and install software. Go on to the next section to learn more.
Step Four: Optimize your Linux installation
To make your Ubuntu installation awesome and run smoothly you might have to tweak it some. Here are few tips I have gathered that may be able to help you!
The Downloads folder in Chrome OS is the same as the Downloads folder on the Linux desktop, so if you download or create a file in one environment, you can put it in the Downloads folder to make it available in the other as well.
This step is critically important for Broadwell-powered Chromebooks, including:
- Acer Chromebook 15
- Acer C910
- Google Chromebook Pixel
- Acer C740
- Dell Chromebook 13
- Toshiba Chromebook 2 (2015)
In Ubuntu, open a terminal and run the following commands, one by one:
sudo apt-get install software-properties-common python-software-properties sudo add-apt-repository https://download.01.org/gfx/ubuntu/14.04/main wget --no-check-certificate https://download.01.org/gfx/RPM-GPG-KEY-ilg -O - | sudo apt-key add - wget --no-check-certificate https://download.01.org/gfx/RPM-GPG-KEY-ilg-2 -O - | sudo apt-key add - sudo apt-get update sudo apt-get upgrade
- If you’re using XFCE, you should disable the screensaver, which can cause graphics issues in Chrome OS.
- If you’re on a Chromebook Pixel, everything will be tiny and you’ll immediately want to adjust your display resolution. In Unity, this is very easy: in system settings, adjust the display resolution to 1600×1024 (3:2) which instantly makes everything look great across the entire UI. In XFCE, you’ll have to do a bit more work: you can adjust the resolution, adjust the icon size, and so on. Also, see the Crouton Wiki for more information.
- To fix text glitches and missing characters if you have them, open a terminal and run this command:
sudo apt-get install ttf-ubuntu-font-family
- By default, the brightness and volume keys don’t work. To fix them, you can install the “keyboard” target. Exit Ubuntu, open the Chrome OS terminal by pressing Ctrl + Alt + T, then type “shell” and then use the command below:
sudo sh -e ~/Downloads/crouton -r ubuntuversion -t keyboard -u
Where “ubuntuversion” is the Ubuntu version you’ve installed (“precise”, “trusty”, etc.)
This will add the “keyboard” target to the existing chroot.
Then, start Ubuntu and use:
Search key + volume keys to change the volume
Search key + brightness keys to change the brightness.
Or you can assign keyboard shortcuts for the two commands mentioned above: System Settings > Keyboard > Shortcuts tab > Custom Shortcuts: click “+” and:
for increasing the brightness: under “Name” enter “Brightness Up” and under command: “brightness up”
for decreasing the brightness (click “+” again): under “Name” enter “Brightness Down” and under command, use: “brightness down”.
Upon first installing Ubuntu, open Xterm and run this command:
sudo apt-get update && sudo apt-get upgrade
By default, Ubuntu comes with only a few applications like Xterm, a file manager, and other small apps. On every new build, I personally install Gnome Terminal, gedit (text editor), and file-roller (archive manager). To do this open a terminal and run:
sudo apt-get install gnome-terminal file-roller gedit
With tweak tools you can customize your desktop with far more flexibility than you can with the default options. There are two great tweak tools you will want to add: unity-tweak-tool and gnome-tweak-tool. To install these, open a terminal window and run:
sudo apt-get install unity-tweak-tool gnome-tweak-tool
Oddly enough, you won’t find entries for either tool in the dashboard, so you have to run them from the terminal. The apps are run with the following commands:
With each tool, you’ll gain significant control over the look and feel of your desktop.
sudo apt-get install software-center
Through the software center, you can install popular applications like Firefox, games, and other Add-ons.
sudo apt-get install vlc browser-plugin-vlc
or via the Software Center
You can install Minecraft by downloading the launcher from https://minecraft.net/download or via the terminal:
sudo add-apt-repository ppa:minecraft-installer-peeps/minecraft-installer sudo apt-get update sudo apt-get install minecraft-installer
You can install Steam via store.steampowered.com or via the terminal:
wget http://media.steampowered.com/client/installer/steam.deb sudo apt-get install gdebi-core sudo gdebi steam.deb
You can install GIMP via the Software Center or via the terminal:
sudo apt-get install gimp
Download via the web at http://www.skype.com/en/download-skype/skype-for-linux/
Download via the web at https://www.libreoffice.org/download/libreoffice-fresh/
Step Five: How to Log Out
Once you’re done in Ubuntu, log out using the “Log Off” command and wait for the system to log out and for the shell prompt to reappear. At that point, you can close out that tab and go back to Chrome OS as usual.
To log back in follow the latter half of step 3 again. To switch back and forth use Control+Alt+Shift+Forward.
Enjoy your Linux installation! In the comment section below, let me know how you are liking it (or not) and if you have any post-install tips or suggestions!
If for some reason you want to remove your Ubuntu installation completely it is easy to remove. On boot at the “OS Verification Off” screen, simply press the space bar. This will wipe your Chromebook files that are stored on your internal drive so backup any files before doing this.