The Crouton project makes it simple to install a full Linux desktop operating system on a Chromebook.
By Ian Paul
PCWorldMay 1, 2017 3:30 am PDT
Image: Rob Shultz
Chromebooks are capable web-focused PCs, and a great choice for anyone who needs a laptop for travel or working outside the office. Thanks to a wide variety of fully featured web apps—some of which work offline—a Chromebook can cover many of the same use cases as a regular PC.
Of course, there are times when nothing less than the flexibility of a full PC desktop environment will do. A Chromebook can still prove useful in those moments if you set it up to run a traditional Linux desktop operating system. Originally designed with developers in mind, Chromebooks can run a full Linux desktop in either dual-boot mode or as a “chroot.”
Chroot stands for “change root.” It’s a system utility in Unix and Linux environments that separates one set of running processes from another—in this case two different operating systems. You can alternate between the two on-the-fly—no reboot necessary.
Using a chroot is the easiest way to install Linux on a Chromebook thanks to a project called Crouton, and if you ever make a mistake, it’s easy to reset everything back to normal.
First things first
Before you can install Linux on a Chromebook you have to put the machine in developer mode. Like other modern PCs, Chromebooks are locked down to prevent malicious code from running—Google calls its security mechanism “OS verification.” This means you’ll be introducing a certain degree of insecurity to your machine by installing Linux. For a detailed breakdown of the risks check out the Crouton wiki.
Moving to developer mode will also wipe your Chromebook’s hard drive of everything but the operating system. Any personal files will be deleted. If you have files saved locally on your Chromebook, move them to the cloud or copy them to a USB drive before continuing.
Once you’re ready, hold down the Escape and Refresh keys on your Chromebook’s keyboard and then press the power button.
For a moment it will look like the process is getting ugly. You’ll see a screen that says Chrome OS is missing or damaged. Ignore it and press Ctrl + D.
Now another screen appears asking you to confirm that you want to turn off OS verification. Press Enter to confirm, and wait.
Next, the Chromebook will confirm that OS verification is off. The laptop will then beep twice, and after about 5 to 7 minutes the switch to developer mode will be complete.
Next, the Chromebook will reboot and you’ll see a new warning screen that says OS verification is off. Get used to this screen. It will appear every time you boot up your Chromebook. The warning is there to protect novice users in case a device has been tampered with. A quick tap of the space bar resets the Chromebook with OS verification turned on. That’s not what we want. To get past this screen without blowing out developer mode, press Ctrl + D.
Your Chromebook will then boot into Chrome OS as usual. At this point, go through the short process of setting up your Chromebook again before installing Linux.
Now it’s time to get your Crouton on. If you’re wondering what Crouton stands for, the developers say it stands for “ChRomium Os Universal chrooT envirONment…or something like that.”
To download Crouton, go to the project’s GitHub repository, and click the “goo.gl” link right at the top of the page. This downloads a simple bash script that will start the installation process.
Once you’ve downloaded the script, tap Ctrl + Alt + T, which will open a new tab with a terminal running. The prompt will say crosh >. Type shell and hit Enter.
Now we’re ready to run Crouton, but before we do let’s talk about how you want to set up the Linux install.
First, you should encrypt your Linux desktop to keep it secure. You also need to decide which desktop you’re going to use with Crouton. The suggested desktop is XFCE since that environment is small in size and won’t be too demanding on a Chromebook processor. In my tests on an Acer Chromebook 14 with a quad-core 1.6GHz processor and 4GB RAM, however, Ubuntu’s default Unity interface worked just fine. Another otpion for anyone who’s feeling hardcore is to install the command-line version of Linux with no graphical interface at all.
To install Crouton with Unity, type the following into your Chromebook terminal and hit Enter: sudo sh ~/Downloads/crouton -e -t unity
Here’s how this command breaks down:
sudo provides temporary super user privileges to carry out a command
sh says you want to use an sh command language interpreter
~/Downloads/Crouton is the file location for the Crouton script
-e tells Crouton you want to encrypt your Linux install. This will also require you to set a Chromium OS shell password
-t tells Crouton you are about to specify which desktop you want installed
unity tells Crouton to install the Unity desktop
If you want to install command-line Linux, the command would look like this: sudo sh ~/Downloads/crouton -e -t cli-extra
Once you’ve told Crouton what to install, the command line will get to work installing Linux. In my tests, the process took about 30 to 40 minutes. During the installation process you’ll be asked for three different passwords: one to set the root password for your Chromebook, an encryption password for the Linux install, and a username and password for your Ubuntu user account. Make sure to use strong, random passwords to keep your data safe.
Once the installation is done, you can enter your Linux build by typing the shell command sudo startunity or sudo startcli depending on which Linux desktop you installed. To open Linux after a reboot, enter Chrome OS, tap Ctrl + Tto open a Crosh shell, type shell, hit Enter, and then type one of the commands above based on what you’ve installed.
If you ever want to erase a Linux installation type: sudo delete-chroot [name of your chroot such as unity]
That’s all there is to running Linux on a Chromebook. If you ever want to return to a normal Chromebook without Linux, hit the space bar when you come to the warning screen at boot.