Installing Linux on a Chromebook: What you need to know
Chromebooks are more powerful than you realize already, but zooming around the web in Google’s browser is just the beginning of what Chromebooks are capable of.
Chrome OS is built on top of the Linux kernel, and you can install a full Linux environment alongside Chrome OS on your Chromebook. This gives you access to Steam and over a thousand PC games, Minecraft, Skype, and everything else that runs on desktop Linux.
ARM vs Intel
If you do plan on getting a Chromebook and using Linux on it, you should consider whether it has an ARM chip or an Intel chip.
ARM-based Chromebooks can use a full Linux environment too, but they’re cut off from a whole ecosystem of closed-source software designed for traditional x86-based PC chips—including Steam and all its games. If you’re planning on running desktop Linux, get an Intel-based Chromebook. You could even use Steam’s in-home streaming to stream games running on a gaming PC to a Chromebook. But this isn’t possible an on ARM Chromebook, as Steam only runs on Intel CPUs.
Developer mode
Installing Linux isn’t officially supported by Google. It requires putting your Chromebook into “developer mode,” which gives you full write access to the entire operating system. Outside of developer mode, these files are normally protected to preserve the operating system’s security from attack. So you’ll have to enter developer mode before you can start installing Linux—check the official wiki for instructions, which are device-specific.
This will boot you into recovery mode, where you can “turn off OS verification.” After that, you’ll be able to have full access to the entire operating system—though that freedom entails some minor headaches. You’ll have to press Ctrl+D or wait 30 seconds every time you boot. Your Chromebook will beep at you and bug you, providing a scary warning that the normal verification process has been disabled. This ensures it’s always obvious when a Chromebook is in developer mode.
Want to stay up to date on Linux, BSD, Chrome OS, and the rest of the World Beyond Windows? Bookmark the World Beyond Windows column page or follow our RSS feed.
Installing Linux
There are several ways to install Linux. For example, you could install it to an SD card and boot from there.
But the best way to install Linux is to install it alongside Chrome OS on your hard drive, despite the limited storage capabilities in most Chromebooks. This lets you run both Chrome OS and a traditional Linux desktop or terminal at the same time, switching between them with a quick keystroke. You can also bring that Linux desktop straight onto your Chrome OS desktop. This also means that Linux environment can use all the same hardware drivers provided with Chrome OS, ensuring good hardware support.
I recommend using Crouton for this. It will help you install Ubuntu or Debian alongside Chrome OS. While this isn’t officially supported by Google, it is developed by a Google employee in his spare time. After you enable developer mode, you’ll be able to open the integrated Chrome OS shell, download the installation script, and run it. It’ll install and set up the Linux environment. The Crouton webpage provides instructions on installing it.
Using your Linux environment
With Linux installed via Crouton, you can run a certain command to launch the Linux session and then switch back and forth between the Linux environment and Chrome OS desktop with Ctrl+Alt+Shift-Back and Ctrl+Alt+Shift-Forward. Again, check Crouton’s webpage for more instructions.
But rather than constantly switching back and forth, you’ll probably want to install the Crouton integration extension from the Chrome Web Store. This will give you a full Linux desktop in a window on your Chrome OS desktop so you can see everything at once without having to switch back and forth.
If you decide you’re done with Linux, you can simply disable developer mode and go back to the normal Chrome OS system state. You’ll be prompted to do this every time you boot your Chromebook. Doing this will erase everything on your Chromebook and set the operating system back to its clean, default state.