How to Install Linux on Your Chromebook – Complete Tutorial (2019)

How to Install Linux on Your Chromebook – Complete Tutorial (2019)

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: 1/8/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

Get Crouton on your Chromebook.
Linux will let you play games, install Windows programs, and do a lot more with your Chromebook.

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:

  • Woody
  • Sarge
  • Etch
  • Lenny
  • Squeeze
  • Jessie
  • Sid
  • Wheezy

Ubuntu versions supported by Crouton:

  • Warty
  • Hoary
  • Dapper
  • Breezy
  • Edgy
  • Feisty
  • Gutsy
  • Hardy
  • Intrepid
  • Jaunty
  • Karmic
  • Lucid
  • Maverick
  • Natty
  • Oneiric
  • Precise
  • Raring
  • Quantal
  • Saucy
  • Trusty

Desktop environments supported by Crouton:

  • Xfce
  • Unity
  • lxde
  • KDE
  • gnome
  • e17
  • Cinnamon

That’s a lot, right?

If you want to read more about these different Linux versions, you can check out some of their popular distros, or see some of the best desktop environments.

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. 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.


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.


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 sh ~/Downloads/crouton -t xfce” and hit Enter.

That’s it.

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:

“sudo startxfce4”

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

Synpatic makes installing programs on Linux easy.
Synaptic is a good program for installing stuff 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.

About Andy Z.

Andy is a casual-hardcore Chrome OS fan and contributes to the site regularly. He likes computers, tech, sports cars, videogames, and of course, Chromebooks. Thinker. Introvert. Geek. You can find him on Twitter (@platytech), or send him an email (

What do you think?

34 Comment threads
55 Thread replies
Most reacted comment
Hottest comment thread
50 Comment authors
Andy Z.ohnoohnoessexgirlhelllllpp Recent comment authors
Newest Oldest Best

I’ve previously downloaded another desktop enviorment, xfde (i think) and now it wont let me download kde, it says”/usr/local/chroots/xenial already has stuff in it! either delete it or specificy a different name, or update it”
can you help me please?


oh, yeah, i dont know how to delete the last de i downloaded


Sorry, but each time I put in
sudo sh ~/Downloads/crouton -t xfce
It just says
sh: 0: Can’t open /home/chronos/user/Downloads/crouton
and when I do
sudo startxfce4
It says “sudo: startxfce4: command not found”


And… It allows me to type “shell”
Here is all of the stuff
crosh> shell
chronos@localhost / $ sudo sh -e ~/Downloads/crouton -r saucy -t cinnamon
sh: 0: Can’t open /home/chronos/user/Downloads/crouton


hi andy,
so xfce is installed on my computer but i cant figure out how to get ubuntu. whenever i follow the instructions it says failed to download crouton installer and then it says check your internet connection or proxy settings (-P). currently my computer has a blue screen with a mouse on it. i want to run java but i cant


Um, I know that you posted a question but, did you get a code line like this: sh: 0: Can’t open /home/chronos/user/Downloads/crouton
If so, how if you get pass it?


Whenever I try to download any one of the os it says sh: 0: Can’t open /home/chronos/user/Downloads/crouton


Same problem here.


Get the crouton installer that’s listed in the text


I’m pressing control alt shift backspace and only thing that happens is the cursor disappears. Kinda stuck at the konsole part of guide


[…] if I installed Linux, and, well, here we are. I used this link to get me as far as I am now:…uide-tutorial/ — and I’m all good up until Step 8, and that’s where things start to get a little […]

lucas kruger
lucas kruger

eu n consegui esse linux por q ele n saia do sudo sei la o resto


Do I have to start all over I set a user name and password but it’s not letting me back in it says incorrect


Hey thanks for this tutorial Andy. I installed everything successfully and is working good. The only issue is that when I press the key combination and go back to chrome OS everything is red and black on the screen. Do you know why this is?


so I have installed linux but have no idea what this ubuntu button is for installing console? i am stuck

oliver child
oliver child

i pressed ctrl alt t and it opened up the terminal. i typed shell and then sudo sh ~/Downloads/crouton -t xfce but it just came up with a thing that said:
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.


what do i do?


hi zach,

whenever i type sudo sh -e ~/Downloads/crouton -t xfce -r trusty into the shell i always get the error
sh: 0: Can’t open /home/chronos/user/Downloads/crouton

im not sure if this is because of the recent update or what but i cant seem to fix it, help would be appreciated


hey andy,
i have gotten Linux to run, but when I try to update it, I get this message:

sudo: apt-get: command not found

mystic w
mystic w

crosh> shell
ERROR: unknown command: shell

mystic w
mystic w

Help me the shell wont work so the sudo wont work


My friend accidentally pressed a button while it was in the process of downloading so I exited and tried from the beginning. After i put in sudo sh ~/Downloads/crouton -t xfce it said
“/usr/local/chroots/xenial already has stuff in it! either delete it, specify a different name (-n), or specify -u to update it.”
What do i do?


I need some help. I got as far as getting crouton and getting to the terminal, but when I typed “shell”, it didn’t recognize the command. I’m positive I’m in the dev mode, and I don’t know what’s wrong.

mystic w
mystic w

me tooo


will these chromebooks be compatible Acer Chromebook 11 CB3-132-C9M7(NX.G4XAA.001) or Acer 15.6″ Full HD IPS Touchscreen Chromebook – Aluminum Silver (CB515-1HT-C2AE) ?

I’d read that touchpad could be the issue, is it true?

Aidan Anderson
Aidan Anderson

how do i get to the Ubuntu button in linux


Cant you also uninstall crouton to uninstall linux, because crouton is the source of it?


When I type in the code it says it’s illegal


Have been running fine for some time. Don’t play often. This last update has not gone well for me. Game crashes every time I’m about ready to enter a game. Will allow champ select, but fails on game load. Any suggestions?


Please help when i click enter after shell nothing happens and when im done typing in sudo sh ~/Downloads/crouton -t xfce


when i boot up my chromebook i cant seem to get linux because when i put sudo sh -e ~/Downloads/crouton -t xfce -r trusty into crosh it comes up with sh: 0: Can’t open /home/chronos/user/Downloads/crouton , i know you said something about pressing the right keys when booting the chromebook up but i dont know what they are , please help



Hi Andy, Thank you for your tutorial. I have managed to install Linux and I have no idea about coding and commands. I have installed steam and downloaded stardew valley, which I am trying to play. The game loads up, but I only get a few minutes into the intro before the chrome screen warning that OS verification is off pops back up, and puts me back into the chrome OS. I can’t seem to progress in he game as this keeps happening. Am I supposed to do something specific when entering Linux to stop this happening? Any help will… Read more >>


how do you restart it after you forget password?
i try to download it again but it keeps on saying it already exists how do i delete it?

Ya Boi
Ya Boi

Hey Andy,
I successfully downloaded everything to the point of opening Linux with “shift+Ctrl+alt+forward” however me and my brother are trying to play a game called rules of survival, it is a game that you have to download from the website and can start playing immediately after opening, on my Chromebook with Linux. The main reason I installed Linux was to play PC games that I couldn’t play on my Chromebook. Any help would be appreciated!
From, Ya Boi

Das Boot
Das Boot

Hi Andy,
I’ve made it through step 6. When I go to step 7, I press “alt+ctrl+t”. The Chrome OS developer shell comes up with “crosh>”. I type “sudo startkde” and receive “ERROR: unknown command sudo”. Do you know if I’ve missed a step?


did you type in shell first

Rhonda Wigington
Rhonda Wigington

When trying to download Linux I get…

“ we trust you have received the usual lecture from the local system administrator. It usually boils down to these 3 things:
1) respect the privacy of others
2)think before you type
3) with great power comes great responsibility

Password: “

I don’t know what to do at this point????!

Help please


ive had this issue before, and I finally managed to fix it. first off, make sure your in developer mode. the default password is test0000, [it doesn’t exactly work in crosh, it works in the dev console] How i got around it was by going into the developer console (ctrl+alt+ forward[aka f2]) and when it asks for a login use root and password test000 , after that it should put the user as localhost (chromeos@localhost:) from there you type sudo chromeos-setdevpasswd and follow the prompt to set up your password, its an EXTREMELY good idea to store that password where… Read more >>


I just did ctrl+D and it reverted back to shell.


Hi, the step about updating linux does not work out. An error message about an update argument is presented.


I followed all the steps, but when i got to the crosh part, i typed in: sudo sh ~/Downloads/crouton -t xfce but it just did the error where it sais: sh: Can’t open /home/chronos/user/Downloads/crouton even though i turned on developer mode.


I have a problem it won’t recognize the launch of the Linux I replaced saucy with trusty and did all the steps I’m unsure on what to do next


Trying to install Linux on ASUS Chromebook C213S, and it’s telling me that it needs a mirror to crouton (-m) for installation to proceed.


I’d like to install Ubuntu on a Asus Chromebook C300MA-DB01. Esc + Refresh + Power does not boot into Recovery mode so I can’t get into Developer mode. It simply boots normally, asking for password. I’ve tried from a POWER OFF state(which I understand to be the correct way, and a from a power on state, same result. I’ve Powerwashed. I’ve changed to both Dev, and Stable channels. no difference. I bought it used, and I’ve verified it is not a “managed’ machine. Note: “ctrl + alt + shift + r” enters a *different* Recovery Mode with the option to… Read more >>