How to Install Linux on a Chromebook
Did you know you can run Linux on your Chromebook? Installing a traditional Linux environment on your Chromebook is a quick and easy way to unlock your machine’s true potential and improve its functionality.
Because the Chrome OS is a Linux-based operating system, users can install an alternative Linux environment and get a fully-fledged Linux desktop on their Chromebooks. Before you start, please note that if you have an ARM-based machine, some Linux apps will not work, as they are only designed to run on Intel architecture.
So, here’s how you install Linux on your Chromebook.
How to Install Linux on a Chromebook
There are two main options you can use to install Linux on your Chromebook. You can either create a dual-boot environment using chrx, an open-source project that replaces the now-defunct ChrUbuntu project, or in a chroot environment using Crouton.
There is also a third option, which uses Crostini, Google’s Linux virtual machine container project that allows you to run Linux apps on top of Chrome OS. Crostini is similar to chroot, in that it allows for the creation of an environment where you can run Linux programs. The difference between the two is that Crostini doesn’t require you to enter Chromebook Developer Mode.
Each option has pros and cons. Read on for a simple step-by-step installation guide, while also considering their advantages and disadvantages.
Create a Chromebook Recovery
Before you start altering your Chromebook with a Linux installation, you should create a Chromebook recovery drive using the Chromebook Recovery Utility. If anything horrendous happens to your Chromebook during the Linux installation, you can restore your Chromebook using the drive.
You’ll need a USB flash drive with at least 8GB space that you don’t mind formatting during the process.
- Download Chromebook Recovery Utility from the Chrome Web Store.
- Use the app to download a copy of Chrome OS onto a removable media with 4GB storage.
If you do run into difficulties and encounter the dreaded “Chrome OS Is Missing or Damaged” message, you’re prepared for the worst. Follow our guide on reinstalling Chrome OS to bring your Chromebook back to life.
How to Put Your Chromebook into Developer Mode
The chrx dual-boot method and chroot installation methods require you to put your Chromebook into Developer Mode. Chromebook’s Developer Mode is a special integrated function that allows you to boot into an unapproved operating system, among other things.
A few words of caution before progressing.
Firstly, putting your device into Developer Mode will wipe all locally stored data, so please ensure you have made adequate backups of everything important.
Secondly, you are removing an important level of Chromebook’s security, as the machine will no-longer verify or authenticate the Chrome OS on start-up, which could leave you open to potential attacks.
Finally, remember any modifications you make are not supported by Google and may void your warranty.
The method for putting your Chromebook into Developer Mode varies depending on the make and model of the machine. Much older Chromebooks have a simple physical switch underneath the battery. Newer versions do not have a removable battery and thus require you follow these steps:
- Hold down Esc + Refresh, and while keeping them pressed, hit the power button.
- Once the computer restarts, you will enter Recovery Mode.
- Press Ctrl + D, which will bring up a prompt asking if you want to enter Developer Mode. Press Enter to proceed.
- The Chromebook will start initializing Developer Mode—this may take some time.
- When the setup is complete, you will meet a screen that displays an exclamation mark, and the phrase OS verification is OFF. From now on, you will see this screen every time you turn on your Chromebook. If you wait 30 seconds, your Chromebook will start automatically, or you can press Ctrl + D to boot immediately.
How to Dual-Boot a Linux on a Chromebook Using chrx
Chrx is an open-source project that you can use to install a Linux distribution alongside Chrome OS. There are several Linux distros you can choose from. These include the full Ubuntu installation, or GalliumOS, which is derived from Xubuntu and is developed specifically for maximizing performance on Chromebook hardware.
There is one important thing to note before continuing. The chrx dual-boot method does is not compatible with Chromebooks that use ARM hardware. You can check the compatibility list before continuing with the tutorial.
Intel Skylake, Apollo Lake, and Kaby Lake models have varying levels of support and testing. Intel Amber Lake, Gemini Lake, and Whiskey Lake models are new and do not have much support.
The chrx installation is a two-part process. Phase one partitions your storage. Phase two installs the Linux distribution and configures your system.
Using chrx to Install Linux
Here is your step-by-step guide to installing Linux on your Chromebook using chrx. Before proceeding, double-check your compatibility, ensure Developer Mode is enabled, and that you have an active internet connection.
- First up, press CTRL + ALT + T to open the Chrome OS terminal, then input shell
- You now need to update the Chromebook firmware to allow legacy booting. Input
cd; curl -LO https://mrchromebox.tech/firmware-util.sh && sudo bash firmware-util.sh.When the firmware update script loads, press 1, then Enter to Install/Update RW_Legacy Firmware.
- Once your firmware update completes, input
cd ; curl -Os https://chrx.org/go && sh go.Press N to install to your system storage.
- Enter the storage size for the Linux partition, then hit Enter. The default installation option, GalliumOS, requires a minimum 3GB storage. Once the installation completes, press Enter to restart your system.
- Once your system reboots, you will encounter a message stating, “Your system is repairing itself. Please wait.” As worrying as this sounds, it is perfectly normal. Wait for this to complete. The time it takes depends on your hard drive. For example, I have a 128GB hard drive in my Chromebook, and the process took nearly 20 minutes.
- When you arrive at your desktop, open the Chrome OS terminal, input shell, then
cd ; curl -Os https://chrx.org/go && sh goto being the second phase of the installation. When the installation finishes, press Enter.
- At the boot screen, press CTRL + L to boot into Gallium OS (or an alternative Linux distro).
The chrx installation process is a little lengthy. Still, the result is excellent and provides you a stable dual-boot environment.
How to Install Linux as a Chroot Using Crouton
One alternative to the chrx method is to use Crouton, an open-source project that installs Linux in a chroot environment.
In practice, this means you can switch between the two operating systems seamlessly by using a simple keyboard command, and the machine will not require rebooting.
Further benefits include sharing the /Downloads folder across both systems. This means that you can easily access files from both environments. Furthermore, removing a Linux operating system installed using Crouton does not require a full system recovery.
The software itself was developed by a former Google employee and is, therefore, optimized to run extremely quickly, even on older machines. The two environments also share drivers, so they should work immediately and without problems.
Installing Linux With Crouton
The process of installing Crouton is very simple. Please check you have a connection to a Wi-Fi network, and you have Developer Mode enabled. Now, follow the steps below to install Ubuntu with Crouton.
- Download the latest version of Crouton to your Chromebook hard drive
Download: Crouton (Free)
- Press CTRL + ALT + T to open the terminal, then input shell
sudo install -Dt /usr/local/bin -m 755 ~/Downloads/croutonto turn the installer into an executable file
- Now, run the installer using
sudo crouton -t xfce
- Towards the end of the installation, you will receive a prompt to enter and username and password for your Linux installation. Choose something suitable, press Enter, and the installation will compete.
Once the installation is complete, head back into the Chromebook shell (from your desktop press Ctrl+Alt+T, type shell, press Enter), then type
sudo startxfce4 and press Enter. After you have done this once, the new OS will continue to run until you either turn off your computer or log out of the Linux desktop environment.
The default installation option, as above, installs Ubuntu 16.04, which is now reasonably out of date. Crouton does support other Linux distros. If you want to check out the other Linux distros Crouton supports, run
sh -e ~/Downloads/crouton -r list before starting the installation. Swap out the name of the Linux distro you want to install in step 4 of the tutorial.
Controlling and Customizing Your Linux Crouton Environment
The following keyboard shortcuts enable you to switch between the original Chrome OS and your new Linux environment:
- ARM-based machines: Ctrl+Alt+Shift+Forward and Ctrl+Alt+Shift+Back
- Intel-based machines: Ctrl+Alt+Back and Ctrl+Alt+Forward then Ctrl+Alt+Refresh
Once you have successfully installed your new environment, there are a couple of actions you should take to improve your experience.
- Enable your keyboard’s brightness and volume keys to work inside the new OS. To do this, access the Chrome OS shell (from the Chrome OS desktop, press Ctrl+Alt+T, type shell, and press Enter).
- Next, type
sudo sh -e ~/Downloads/crouton -r precise -t keyboard –uand press Enter.
- Remove the new environment’s screensaver as it has been known to cause graphics errors. You can do this from the terminal inside Linux by typing
sudo apt-get remove xscreensaverthen pressing Enter.
- Install Ubuntu Software Centre and Synaptic (both used for installing additional apps). Do this by entering the terminal inside your new Linux installation, typing
sudo apt-get install software-center synapticand pressing Enter.
How to Remove a Crouton Installation
There are two principal ways to remove a Linux environment installed using Crouton.
The first is to enter the shell on your Chrome OS (press Ctrl+Alt+T, type shell, press Enter) and do the following.
cd /usr/local/chrootsand press Enter
sudo delete-chroot *and press Enter
rm -rf /usr/local/binand press Enter
The alternative is to reboot your Chromebook and press Space when you see the initial OS verification is OFF screen. This will take your device out of Developer Mode and wipe all local data, including any new environments you have installed.
As always, ensure you have made backups of any important data before taking this step. If you want to enter Developer Mode again after this point, you’ll have to repeat the process explained earlier.
How to Install Linux Apps Using Crostini
Now, onto the third and final method for running Linux apps on your Chromebook. Crostini allows you to create a virtual container for a Linux app. The Linux app runs on top of your existing Chrome OS installation, so there is no need to enter Developer Mode or make tweaks to the existing operating system.
The only downside is that Crostini is not available on many Chromebook models. At least, not many at the time of writing—and none that I currently own. Check out the full compatibility list to see if your Chromebook model can run the Linux (Beta) and, in turn, Crostini.
If you’re thinking of waiting around for Crostini to come to your Chromebook, owners of certain models should consider using one of the alternative methods. The list of Chromebook models that will not receive Crostini is lengthy.
How to Use Linux Apps on Your Chromebook With Crostini
The process of loading and using Crostini on a compatible Chromebook is simple. On your Chromebook:
- Open the Settings menu
- Scroll down to find Linux (Beta), then turn the option on
- Follow the on-screen instructions. The setup process can take up to 10 minutes.
- Once Linux finishes installing, a Linux terminal will appear. Update the Linux installation using the
sudo apt updatecommand, then
sudo apt update upgrade.
- On completion, open your Chrome browser and type chrome://flags. Type crostini in the Flags search bar, then search for the Crostini GPU Support
- Switch it to Enabled.
After you complete the Linux (Beta) and Crostini installation, you can install Linux packages to your Chromebook. You will find a new option in your Chrome OS file menu for Linux apps, too, allowing you to launch Linux apps as if it were a Chromebook app.
3 Ways to Install Linux on a Chromebook
There are three options for you to start using Linux on your Chromebook. The main limitations of selecting a method come from your hardware type and its compatibility. ARM-based Chromebook models should opt for Crouton, whereas Intel-based Chromebook models have a wider range of options.
Are you getting into the Chrome OS terminal? Check out our list of the most important Crosh commands every user should know.