How to Install and Run Linux on a Chromebook

Using Crouton to Switch Between Chrome OS and Ubuntu

Linux
John Coulter/Getty Images

Chromebooks have become popular for two simple reasons:

  • Ease of use
  • Price

Their growing popularity has led to a rapid increase in the number of apps available, which in turn enhance the functionality of these Chromebooks. We're not here to talk about Chrome OS or its apps, however.  We're here to talk about running Linux on a Chromebook, a powerful operating system that is most definitely not a Chrome app.

By following the tutorial below you can also run a full-fledged version of the Linux operating system on your laptop, opening up a whole world of possibilities on what is essentially a low-budget machine.

Before installing Ubuntu on your Chromebook, you first need to enable Developer Mode. This is a mode typically reserved for advanced users only, so it is important that you pay careful attention to the instructions below.

Enabling Developer Mode

While most of your data in Chrome OS is stored server-side in the cloud, you may also have important files saved locally; such as those found in your Downloads folder. In addition to disabling certain security restrictions and allowing you to install a customized version of Ubuntu, activating Developer Mode also automatically deletes all local data on your Chromebook. Because of this, make sure everything that you need is backed up on an external device or moved to the cloud before taking the steps below.

  1. With your Chromebook on, hold the Esc and Refresh keys down simultaneously and tap your device's power button. A forced reboot should begin, at which point you can let go of the keys.
  2. After the reboot is complete, a screen with a yellow exclamation point and a message that Chrome OS is missing or damaged should appear. Next, utilize this key combination to initiate Developer Mode: CTRL+D.
  1. The following message should now be displayed: To turn OS verification OFF, press ENTER. Hit the Enter key.
  2. A new screen will now appear stating that OS verification is off. Do not touch anything at this point. After a few sections you will receive notification that your Chromebook is transitioning into Developer Mode. This process may take some time and could involve multiple reboots. You will eventually be returned to the OS verification is OFF message, accompanied by a red exclamation point. Ignore this message and wait until you see the welcome screen for Chrome OS.
  3. Since all local data and settings were deleted when you entered Developer Mode, you may have to re-enter your network details, language and keyboard orientation on the OS welcome screen as well as agree to the operating system's terms and conditions. Once completed, sign in to your Chromebook when prompted to do so.

Installing Ubuntu via Crouton

While there are multiple options available to install and run a flavor of Linux on your Chromebook, this tutorial focuses on the recommended solution only. The main reasons that I recommend utilizing Crouton lie in its simplicity and the fact that it allows you to run Chrome OS and Ubuntu side-by-side, eliminating the need to hard boot into one operating system at a time.

To get started, open your Chrome browser and follow the steps below.

  1. Navigate to Crouton's official GitHub repository, found at the following URL: https://github.com/dnschneid/crouton
  2. Click on the goo.gl link, located directly to the right of the Chromium OS Universal Chroot Environment header.
  3. A Crouton file should now be available in your Downloads folder. Open the Chrome OS developer shell in a new browser tab by using the following keyboard shortcut: CTRL+ALT+T
  4. A cursor should now be displayed next to the crosh> prompt, awaiting your input. Type shell and hit the Enter key.
  5. The command prompt should now read as follows: chronos@localhost / $. Enter the following syntax at the prompt and hit the Enter key: sudo sh ~/Downloads/crouton -e -t xfce. If you are running a Chromebook device with a touchscreen, use the following syntax instead: sudo sh ~/Downloads/crouton -e -t touch,xfce
  1. The latest version of the Crouton installer will now be downloaded. You may now be prompted to provide and verify both a password and an encryption passphrase at this juncture, the reason being that you chose to encrypt your Ubuntu installation via the "-e" parameter in the previous step. While this flag is not required, it is highly recommended. Choose a secure password and passphrase that you will remember and enter them accordingly, if applicable.
  2. Once key generation is completed, the Crouton installation process will begin. This will take several minutes and requires minimal user intervention. However, you can view details of each step in the shell window as the installation progresses. You will eventually be asked to define a username and password for the primary Ubuntu account towards the tail end of the process.
  3. After installation has successfully completed, you should find yourself back at the command prompt. Enter the following syntax and hit the Enter key: sudo startxfce4. If you chose encryption in the previous steps, you will now be prompted for your password and passphrase.
  4. An Xfce session will now begin, and you should see the Ubuntu desktop interface in front of you. Congratulations... You're now running Linux on your Chromebook!
  5. As I mentioned earlier in the article, Crouton allows you to run both Chrome OS and Ubuntu simultaneously. To switch between the two operating systems without having to reboot, use the following keyboard shortcuts: CTRL+ALT+SHIFT+BACK and CTRL+ALT+SHIFT+FORWARD. If these shortcuts do not work for you then you are probably running a Chromebook with an Intel or AMD chipset, as opposed to ARM. In this case, utilize the following shortcuts instead: CTRL+ALT+BACK and (CTRL+ALT+FORWARD) + (CTRL+ALT+REFRESH).

Start Using Linux

Now that you've enabled Developer Mode and installed Ubuntu, you'll need to follow these steps to launch the Linux desktop each time you power on your Chromebook. It should be noted that you will see the warning screen stating that OS verification is OFF every time you reboot or turn the power on. This is because Developer Mode remains active until you manually disable it, and is required to run Crouton.

  1. First, return to the developer shell interface by using the following keyboard shortcut: CTRL+ALT+T.
  2. Type shell at the crosh prompt and hit Enter.
  3. The chronos@localhost prompt should now be displayed. Type the following syntax and hit Enter: sudo startxfce4
  4. Enter your encryption password and passphrase, if prompted.
  5. Your Ubuntu desktop should now be visible and ready for use. 

By default, the version of Ubuntu which you have installed does not come with a great deal of pre-installed software. The most common method for locating and installing Linux applications is through apt-get. This handy little command line tool allows you to search for and download countless applications within Ubuntu. Please note that AMD and Intel-based Chromebooks have access to more working applications than those running ARM chips. With that said, even ARM-based Chromebooks have the ability to run some of the most popular Linux applications.

Visit our in-depth guide to learn more about installing applications from the command line via apt-get.

Backing Up Your Data

While most data and settings in Chrome OS are automatically stored in the cloud, the same cannot be said for files created or downloaded during your Ubuntu sessions. Keeping this in mind, you may want to back up your Linux files from time to time. Luckily, Crouton provides the ability to do just that by taking the following steps.

  1. Launch the developer shell interface by keying the following shortcut: CTRL+ALT+T.
  2. Next, type in shell at the crosh prompt and hit the Enter key.
  3. The chronos@localhost prompt should now be displayed. Type the following command and parameters and hit Enter: sudo edit-chroot -a
  4. The name of your chroot should now be displayed in white text (i.e., precise). Type the following syntax followed by a space and the name of your chroot and hit Enter: sudo edit-chroot -b. (i.e., sudo edit-chroot -b precise).
  5. The backup process should now begin. Once completed, you will see a message stating Finished backing up along with a path and filename. A tar file, or tarball, should now be located in your Chrome OS Downloads folder; which is shared and therefore accessible within both operating systems. At this point it is recommended that you copy or move that file to an external device or onto cloud storage.

Removing Linux From Your Chromebook

If you ever find yourself uncomfortable with the fact that Developer Mode provides a less secure environment than when OS verification is enabled or if you just want to remove Ubuntu from your Chromebook, take the following steps to return your device to its previous state. This process will delete all local data, including any files in your Downloads folder, so be sure to back up anything important beforehand.

  1. Restart your Chromebook.
  2. When the OS verification is OFF message appears, press the space bar.
  3. You will now be asked to confirm whether or not you want to turn OS verification on. Hit the Enter key.
  4. A notification will appear briefly stating that OS verification is now on. Your Chromebook will reboot and be restored to its original state at this point. Once the process is complete, you will be returned to the Chrome OS welcome screen where you'll once again need to enter your network information and login credentials.