This detailed guide provides you step-by-step instructions with screenshots to install Linux on Chromebook.
Why install Linux on Chromebook?
You might be already knowing that Chrome OS is based on Linux kernel. If it is, then do we really need to install Linux separately?
The answer is Chrome OS is not really Linux even though it is based on Linux Kernel. It has a hidden terminal but it doesn’t let you do many things, even many simple Linux commands won’t work by default. It’s a closed source propriety OS and it is locked down, for security reasons.
The kind of lock down Google has put on Chromebooks, it reiterates my belief that Google hates Linux.
Installing Linux on Chromebook
There are several ways you can do that.
- Dual-boot Linux with Chrome OS
- Remove Chrome OS and install just Linux (possibility)
- Install Linux inside Chrome OS and switch between Chrome OS and Linux using keyboard shortcuts, thanks to crouton.
In this article, we shall see the third method, installing Ubuntu using crouton.
Why install Ubuntu in Chromebook using crouton?
There are several benefits of installing Ubuntu using crouton. Crouton basically installs Linux in chroot environment. This way, you switch between the operating systems without a reboot.
Moreover, the Download directory will be shared between Linux and Chrome OS. This is an added advantage.
Also, a typical Linux install will take at least 6 GB. This method will take around 2 GB at max.
On the downside, this method is limited to Ubuntu Linux. You cannot install other Linux distributions using this method.
If you are convinced let’s see how to install Ubuntu Linux on Chromebook.
This tutorial has been performed on Asus C300 Chromebook that has Intel Celeron processor, 32 GB SSD and 4GB RAM.
Part 1: Enable developer mode
The first part of this tutorial shows you to refresh your Chromebook in developer mode.
On your Chromebook, Hold down the Esc+Refresh key (there should be a dedicated refresh key in your Chromebook, just look for the symbol). While you have Esc and Refresh key pressed, press the power button. This will reboot your Chromebook into “recovery mode”.
When it boots into Recovery Mode, you’ll see an ‘error’ message:
Chrome OS is missing or damaged.
Please insert a recovery USB stick or SD card.
Don’t worry. It’s not really an error and your Chromebook is safe. At this stage, if you press Ctrl+D, you’ll be taken to OS verification page. If you press Esc or power button, you’ll reboot to normal Chrome OS.
To proceed with enabling the developer mode, press Ctrl+D.
At the next screen, you’ll be asked to turn off ‘OS verification’. By design, Chromebooks are locked down to only allow Google-approved operating systems to boot. It verifies the operating system at each boot.
To enable the developer mode, you’ll need to turn off the OS verification. Just press enter.
This scary looking message tells you that OS verification is turned off. It’s a security feature to notify the end user that the device is in developer mode. Since Chrome OS is less secured in developer mode (because you can use a lot more commands and install a lot more program than in the normal mode), it works as a warning message.
When you are at this screen, press Ctrl+D to boot in developer mode. If you leave the screen unattended for long, you’ll hear a beep sound and then you’ll be automatically taken to developer mode installation/boot.
Normally, you should see a message in English:
Preparing system for developer mode.
This may take a while.
Do not turn your computer off until it has restarted.
Since I bought my Chromebook in France, a similar message has been displayed in French.
So, as the message says, it will take a while for the system to be ready. For me, it took around 12 minutes.
Once the process finishes, your Chromebook will boot like the first time. So, now you have to reconfigure it with your Google account.
Congratulations! You have successfully enabled the Chrome OS developer mode. Now, it’s time to install Linux on it.
Part 2: Installing Ubuntu Linux on Chromebook
We have the battle half won with the developer mode enabled. Now it is time to install Ubuntu using crouton project developed by a Google employee.
Go to the Github directory of crouton. You should see a link to a script on this page. Download it.
It will be saved in the Downloads directory, exactly where we want it to be.
If you did not know already, there is a terminal in Chrome OS, crosh (acronym of Chrome Shell). This is not a stand alone GUI program but rather, it is run inside Chrome browser.
If you press Ctrl+Alt+T (yes, same shortcut as Ubuntu), crosh terminal will be opened in a new tab in Chrome web browser.
Type the following command in it:
By default, crosh doesn support all the Linux commands, not even cd or ls, but when you use shell, you can use the normal commands like ls, cd and run shell scripts.
So, we have the script already saved in Download directory. All you need to do is to run the following command:
sudo sh ~/Downloads/crouton -t xfce
Instead of xfce, if you can use:
- kde to install Ubuntu with KDE
- unity to install Ubuntu with Unity
- touch,kde to install Ubuntu with KDE for touchscreen Chromebooks
- touch,xfce to install Ubuntu with XFCE for touchscreen Chromebooks
- touch,unity to install Ubutnu with Unity for touchscreen Chromebooks
You can also use parameter e for encryption. Then the command will become:
sudo sh -e ~/Downloads/crouton -t xfce
I usually do not favor encryption for regular users. The choice is yours.
If you ask for my advice as to which desktop environment should you choose among Unity, XFCE and KDE, I advise XFCE because it takes fewer resources. Surely, a lightweight Linux distribution is more suited for a (generally) low end device like Chromebook.
Once you have entered the command to install Ubuntu, now you need to wait. The installation takes time because it will be downloading the entire operating system. The installation time depends on your internet speed. For me on a 50 MBPS speed, it took around 15 minutes.
Good thing is that you can continue doing your work on the Chromebook. The installation will not obstruct the normal computing.
Just keep an eye on the installation because at the end of the installation, you will be asked to provide user name and password.
Also note the command which you need to use for starting Ubuntu. As you can see in the screenshot, for Ubuntu XFCE, it has mentioned the command startxfce4.
When the installation is finished, you can start Ubuntu by using the command below:
Command will be different for other desktop variants. I presume that you can find the correct command.
Once started, you will be logged into Ubuntu session. Remember that Download directory is common between the Chrome OS and Ubuntu. However, other directories will not be accessible through the Files application in Chrome OS.
You can switch between Chrome OS and Ubuntu using the key combinations Ctrl+Alt+Shift+Back and Ctrl+Alt+Shift+Forward.Ctrl+Alt+Shift+Back and Ctrl+Alt+Shift+Forward.
The back here may not be the same as Backspace key. Please refer to the picture of my keyboard at the beginning of this post to find the correct keys.
If you use logout in Ubuntu session, your chroot session will be terminated.
Congratulations! You have Linux on Chromebook now :)
Remember that it is a bare minimum Ubuntu installation. This means that you will not have most of the applications you are so used to of. I recommend going through this post to know what are the things to do after installing Ubuntu.
Key points to remember while using Linux on Chromebook
Few things to remember after using this method to install Ubuntu on Chromebook:
- With developer mode on, you will see ¨OS verification is off¨ screen at each boot. Press Ctrl+D at this screen.
- Press Ctrl+Alt+T to access terminal
- Enter command: shell
- Enter command: sudo startxfce4
- Use keys Ctrl+Alt+Shift+Back and Ctrl+Alt+Shift+Forward to switch between Chrome OS and Ubuntu
- If you have ARM Chromebook, several Linux applications might not work
Removing Ubuntu Linux from Chromebook
While it hardly takes 1.5 GB in installing Ubuntu, it may happen that with more and more software installation, Ubuntu starts taking more space. Free space could be certainly an issue specially if you have 16GB Chromebook.
Of course, you can have reasons other than space for removing Ubuntu from the Chromebook.
To get rid of Ubuntu (installed using crouton) from Chromebook, do the following:
- Use Ctrl+Alt+T for terminal
- Enter command: shell
- Enter command: cd /usr/local/chroots
- Enter command: sudo delete-chroot *
- Enter command: sudo rm -rf /usr/local/bin
This will remove the Ubuntu installation.
Alternatively, at the boot screen, when you see ¨OS verification is off¨, press space bar and re-enable the OS verification. This will disable the developer mode, remove all the local data including the Ubuntu installation.
I hope this guide was easy to follow and helped you to install Ubuntu on Chromebook. If you have questions or suggestions, please feel free to use the comment section below.