So, you want to install Linux on your Chromebook.
You’re probably trying to install some familiar program and you’ve read that you need a copy of Linux to run it.
Or maybe you’re trying to install a copy of Linux so you can run it simultaneously with Chrome OS.
Maybe you want a full-blown desktop rather than a stripped-down Chrome OS.
Or maybe you just want to play Minecraft on your Chromebook and you’ve read you need Crouton.
Whatever the case, here’s how to install Linux on your Chromebook.
To get Linux, you need Crouton.
This guide will go over Crouton’s purpose, the actual installation of Linux, some tips and tricks for Linux, and then a troubleshooting and an uninstall section if you messed up.
By the end of this tutorial, you should have Linux installed alongside Chrome OS on your Chromebook.
So essentially you’ll have two operating systems running at the same time (also known as “dual booting”). Fancy.
Let’s get started.
Last updated: 12/03/19.
Do you already have Linux on your Chromebook?
Chrome OS recently rolled out a Linux (beta) feature, which lets you run Linux within a Chrome Browser tab in full!
Although this is still new and has some bugs, it works relatively smoothly. If you have this feature, I suggest using it instead of going through these steps. If you’re following another guide and came here, you can skip the “installing Linux” part of the tutorial and continue after that part.
But if you run into problems getting certain games to run or Linux to work, you may want to just install Linux the traditional way- using this tutorial.
What does Crouton do?
First, you should know what Crouton does.
It’s more like a group of scripts bundled into one program.
Currently, Crouton supports Debian, Kali, and Ubuntu.
You’ll need Crouton in order to install a copy of Linux on your Chromebook. And that’s the first thing we’ll be downloading right after Developer Mode is enabled.
Customizing your installation of Linux
It’s completely up to you to decide how you want to customize your installation.
You can choose the exact version of Ubuntu and the desktop environment to go with it.
Just to give you an idea of all the different versions you can install, here’s a list of supported Linux distros and desktop environments.
Debian versions supported by Crouton:
Ubuntu versions supported by Crouton:
Desktop environments supported by Crouton:
That’s a lot, right?
But don’t worry. For the purposes of this tutorial, we’ll just be installing a basic version of Linux with a basic desktop environment.
However, you can feel free to customize your installation however you’d like. I’ll provide instructions on when and how to do so when we get to that step.
Sound good? Let’s get started.
Install Linux on your Chromebook with Crouton
Step 1: Make a backup of all your important data
Installing Linux will delete all your personal data, so be sure that you save all your stuff before you proceed.
Everything you have saved on your Chromebook in the Downloads folder (or any custom folders) will be deleted.
Your Google Account will remain untouched, so don’t worry about that. It’s just the stuff you have on your hard disk that you need to backup.
You can use the freebies Google provides you with your new Chromebook purchase. Use the free Drive storage from Google, or back up your stuff to a flash drive, SD card, or external hard drive.
Make sure you backup your files in the “Downloads” folder as these will be deleted. This includes all pictures, videos, docs, or any other files you have saved in there. And any custom folders or directories you’ve created will be wiped as well.
Step 2: Enable Developer Mode
I’ve written a complete guide dedicated to enabling Developer Mode which you can read here.
If you’ve never done this before, I strongly suggest you read it over to get familiar with the process.
For those who’ve done this before and just need a refresher, here’s a summary:
Step 1: Press “ESC + Refresh + Power Button” in order and hold it until you get a scary-looking warning screen.
Step 2: Follow the on-screen prompts. You’ll get multiple warning screens. Just read them over and keep going. Go ahead and wipe the data when it prompts you.
Step 3: Your Chromebook will reboot and you’ll be in Developer Mode when it’s done starting up.
(You’ve backed up your stuff, right?)
Step 3: Download Crouton
After your Chromebook restarts, log in with your credentials and launch the Chrome Web Browser.
Go to the GitHub page here and download the newest Crouton version. It should show up in your “Downloads” folder- the default folder!
Be sure it’s saved in the default folder and not any custom folder you’ve created (or else the code in the following steps won’t work properly).
I also strongly suggest you at least skim over the GitHub page. It answers a lot of FAQs you may have about Crouton.
If you get stuck at any part, you should check out this troubleshooting guide.
Technically, you’ve now installed Crouton on your Chromebook.
But getting this far really doesn’t do anything.
Let’s continue and install Linux.
Step 4: Get Crouton ready
After you’ve downloaded Crouton, you can now install Linux.
Are you ready? Let’s roll.
Press “ALT + CTRL+ T” to open the command prompt.
Type (without the quotes):
“shell” and press Enter.
If you get an error like this:
“sh: Can’t open /home/chronos/user/Downloads/crouton”
It means you’re not in Developer Mode. Or it means you don’t have the Crouton file in the right folder you specified.
Chrome OS has a habit of reverting back to the normal, stable mode whenever you restart, turn off and turn on, or even wake it up from hibernate mode.
The trick is to press the right keyboard combination when you boot it up. You’ll see a warning screen every time and you have to press the correct keys to keep “OS Verification” off. If you do nothing or press the wrong keys, it’ll revert back out of Dev Mode and you won’t be able to enter any code.
You can also try deleting the Crouton file, redownloading it, and then try running the code again. If you’re still stuck, leave a comment for me and I’ll check it out.
Step 5: Install Linux via Crouton
This is where the customization comes into play.
Remember all the different options from earlier?
As you already know, there are a ton of options.
To keep this guide simple, I’m just going to install Ubuntu (16.04) with the Xfce desktop environment.
Ubuntu LTS (long-term support) and is considered a very stable version of Linux. And the Xfce desktop is very simple and basic…and it works. It’s the most similar to a classic copy of Windows (back in 1997).
It’s minimalistic and puts less of a demand on resources from the CPU since you’re using a bare-bones desktop UI (it’s fast and speedy).
But if you want some eye-candy like transitions and effects, try out KDE.
The most popular desktop environments are Unity, Xfce, and KDE.
Here’s a brief review of each desktop UI:
- Unity: Probably offers the most features (some of which you won’t use). A very nice starting point for people new to Linux.
- Xfce: Fast and basic. Minimalistic design. Very bare and ugly to look at, but gets the job done.
- KDE: A mixture between the two. Eye-candy and transitions. Not overloaded with features.
I’m going to go with the easiest and most straightforward option- Xfce. It’s fast and easy to use, and will probably avoid some confusion for first-time users.
If you’re familiar with Linux, you can choose your version accordingly. Just modify the code to match it.
Go ahead and choose your desktop and Linux version.
I’ll give you some examples here about how to install the custom version you want. Don’t care for it? Skip over it.
How to install different Linux distros with Crouton – some examples
Let’s say you wanted to install Saucy with the Cinnamon desktop UI.
You’d type the following:
“sudo sh -e ~/Downloads/crouton -r saucy -t cinnamon”
All you need to do is replace the command after the “-r” flag with the name of the version you want, and replace the command after the “-t” flag with the desktop environment you want. It’s that easy.
If you leave either of them blank, Crouton will install Precise and Unity by default.
But that’s not all, you can also add in targets to the code.
For example, if you wanted touchscreen support on Linux, you’d type in:
“sudo sh -e ~/Downloads/crouton -r saucy -t cinnamon,touch”
Or if you wanted support for your Chromebook’s unique keys, you’d type in:
“sudo sh -e ~/Downloads/crouton -r saucy -t cinnamon,keyboard”
Or if you wanted both touchscreen support and keyboard support, you’d type in:
“sudo sh -e ~/Downloads/crouton -r saucy -t cinnamon,keyboard,touch”
Here’s a list of optional targets you can add in:
- chrome (installs Chrome Web Browser)
- audio (audio playback)
- keyboard (support for Chromebook’s unique key)
- touch (support for touchscreens)
- xbmc (installs xbmc player)
- extension (clipboard access for both Chrome OS and Linux)
- gtk-extra (installs a browser and gksu and gdebi)
- cli-extra (installs additional tools)
- core (core system configuration)
So, as you can see, you have a lot of different options to install Linux. It’s completely up to you to decide which version to install.
If you want to secure your connection, you can add encryption to your chroot.
The naked installation is only as safe as the password you created. If someone knows your password, they’re able to log in as you and do as they please.
You can add encryption to your Linux installation by adding the “-e” to your install command.
“sudo install -Dt /usr/local/bin -m 755 ~/Downloads/crouton -e”
Notice the “-e” tacked on to the very end of the command. That’ll add an additional layer of protection to your chroot.
Installing Ubuntu with Xfce
As I said earlier, I’ll stick with installing a basic copy of Ubuntu with Xfce.
It’s simple, fast, and does pretty much everything.
Feel free to change the code to your liking. Or follow along and just install the same version and desktop as me. The choice is yours.
If you want to have audio playback and be able to use the special keys on your Chromebook’s keyboard, you’ll have to modify your code. I’ll just be installing the bare-bones version.
To do this, just type the following:
(The last line of code you entered should’ve been “shell” at this point.)
“sudo install -Dt /usr/local/bin -m 755 ~/Downloads/crouton” and hit Enter.
“sudo crouton -t xfce” and hit Enter once again!
A single line of code and Linux is now installing.
This may take a while, so sit back, grab a Red Bull, and watch some Simpsons.
Getting an error?
If you’re getting an error that reads something like:
“WARNING: saucy has reached upstream end of life. That means there will be no package updates available. You also have to specify a mirror to crouton (-m) for installation to proceed.”
For those of you who get an error similar to this one (replace “saucy” with your specific distro), it simply means that there’s no more support for that package and you should try replacing it with a different one.
All you need to do is choose another distro. I recommend against proceeding with the outdated package because it’ll lack patches and updates for the latest games and programs. You can check out Ubuntu’s download page for the current packages you can install.
Step 6: Create an admin account
After the installation is complete, you’ll be prompted to type a username and password.
Go ahead and fill in these fields. Your password field will appear to be blank. This is normal.
Be sure to jot it down. If you forget, you’ll have to start all over.
Step 7: Launch Linux
Open up the command prompt again by pressing “CTRL + ALT + T” and then type the following to launch Linux:
If that doesn’t work, try:
“sudo sh ~/Downloads/crouton -t xfce”
(Remember, this assumes you’ve installed Xfce. If you did a custom install, you’ll have to replace the word with whatever you installed.)
The splash screen will show up and you’re now officially able to play around in Linux.
You’ve just installed Linux using Crouton on your Chromebook! Congratulations.
Step 8: Update Linux
I always recommend that you recommend that you update your copy of Linux right away after installing it on your Chromebook.
Type the following to update to the latest version:
“sudo apt-get update sudo apt-get upgrade sudo apt-get install”
That’s it. You’re done.
Next, I’ll go over briefly how to install programs with Linux.
Tip: Something useful to remember- in the future, Crouton updates happen pretty frequently. This may (and probably will) break something on your Linux installation because of outdated code.
When this happens, you can update your “chroot” by using the above code. An update usually fixes the majority of issues.
You can also see what version of Linux you have installed, and if there are any new updates pending by running the following line:
“croutonversion -u -d -c”
After that, if you happen to see an update, you can get the newest version by exiting the chroot then typing the following:
“sudo sh ~/Downloads/crouton -u -n chrootname”
(Replace “chrootname” with your respective…”chrootname.”)
If you don’t know what a “chroot” or “chrootname” is, you should refer to this guide.
How to install programs on Linux
Your copy of Linux is very bare right now. You probably want to install a few programs and applications to get you started, no?
I only recommend two programs. They both make installing stuff very easy on Linux.
- The first is using the Konsole. Just click on the Ubuntu button and a search box will appear. Search for “konsole” or you can just look for it in the menu. From there, you can search for whatever applications you want to install. GIMP, VLC, Chrome, Sublime Text, and a lot of others. This is probably the easier method to use.
- The second one is the Ubuntu Software Center. You can download this application and it’ll act as a central hub to download other applications. You won’t have to use any code as it’s all graphical. It’ll make installing programs a lot easier. Unless you’re a dedicated Linux fan who prefers to “sudo” and type in commands for everything you do on your computer.
Of course, there are a lot of other programs that you can use as well, like Synaptic.
Just try them out and pick one that works for you.
Switching between Chrome OS and Linux
Did you know your Chromebook has a built-in keyboard shortcut to switch between the two operating systems on-the-fly?
How handy is that?
- To switch to Chrome OS, just press “CTRL + ALT + SHIFT + Back Arrow” and you’ll instantly jump back to Chrome OS.
- To switch to Linux, just press “CTRL + ALT + SHIFT + Forward Arrow” and you’ll go back to Linux.
(By the way, the Forward/Back Arrows aren’t the Up/Left/Down/Right. They’re the Forward and Back Arrows at the top of your keyboard- where the F1-F12 keys are on a standard QWERTY keyboard. Don’t get confused.)
How to uninstall Linux from your Chromebook
If you’re done playing around or you screwed up while trying to install Linux, it’s very easy to start over and try again.
You can do one of two things:
- Install the verified version of Chrome OS: During boot up, you’ll see the warning screen telling you that system verification is off. Just press the Spacebar and it’ll automatically fix itself. Your Chromebook will now revert back to factory settings.
- Powerwash your Chromebook: This will delete everything and restore your laptop back to factory settings. You do this from within Chrome OS. I wrote a complete guide about it if you need a detailed tutorial.
You now have the power of Linux
So there you have it.
You can install Linux to do many things you couldn’t previously do on a Chromebook. Most applications work offline as well, so you don’t have that limitation.
To be honest, a Chromebook keeps it simple and will do most of your tasks required.
But for some people, they made need programs that a Chromebook simply can’t run or doesn’t offer in the store. The solution is to use Linux to run these programs.
For most people, Chrome OS will suffice. It’s more than enough to get the job done.
But then again, you have those computer enthusiasts who want to get the most out of their computer. Or hardcore Linux fans who want to have constant access to their favorite OS no matter what they’re dual-booting with.
If you got stuck, leave a comment and I’ll get back to you ASAP.
Or you’ve found this guide to be helpful, I’d also like to know- go ahead and leave a comment.
And consider telling a friend as well =].
Thanks for reading.