Home Chrome OS How To Easily Install Linux on Chromebook

How To Easily Install Linux on Chromebook

Chromebook and Linux both are the popular and versatile OS. Initially, the Chromebook was made keeping in mind of the students, but now it becomes a full-fledged OS after joining the Android Play Store. Millions of Android apps can be installed and used in the Chromebook to do a lot more productive task.

On the other hand, Linux offers some powerful and useful alternative software for users who have come from the Windows or any other system. GIMP ( the alternative of adobe photoshop), Darktable, (a Lightroom alternative) and lots of software out there in the various Linux software repositories, which can help the users to adopt the open-source system instead of Windows or Mac OS.

So if you are a Chromebook user and want to have dual OS side by side with the Linux system for the more productive job or want to get a different flavor, then this is the right place for you to know how to install Linux on Chromebook to unlock its full potentiality. Here I will be proceeding with natural step by step tutorial on How to easily install Linux on Chromebook.

Here I will be using Crouton to install Linux on Chromebook, which uses the chroot command to run the Linux distros on top of the Chrome OS, another derivative of the Linux kernel. This is just like dual booting without rebooting the system instead of opening both the OS side by side in a Chrome, Window manager. This is amazingly easy to use and powerful of having both the system alongside.

But if you like to install Linux on Chromebook as a traditional dual boot, I would like to recommend you to see ChrUbuntu instead. Using Crouton is much more comfortable to follow and works on almost all types of Chromebook.

Before going to follow these tips and tutorials, you must take a full backup of your all the files on google drive and make a Chrome OS restore an image. So that if any unwanted things happen during the process, you can restore your full effective system of the Chromebook.

# Steps to Getting Started

Don’t skip any of those noted steps. Though installing Linux on the Chromebook is easy and straightforward but it always good to have all the necessary tools before factory flash of the Chromebook. When you take your Chromebook into developer mode for the first time, it will remove all the system data and files from the system. That means you have to start from scratch. Don’t get afraid, follow the instruction and have fun.

Step 1: Enable Developer Mode

As I have said earlier, it will wipe your all the data. And I believe you have followed “Steps Before Getting Started.” This is some general information about putting the Chromebook into developer mode. But it is wise to have google search with your Chromebook specific model.

  • First of all, you have to take your Chromebook into recovery mode by pressing and holding the Esc, Refresh keys, and the Power button altogether.

Chromebook into recovery mode
Chromebook into recovery mode

  • When the recovery mode comes up, press Ctrl+D to turn on Developer Mode.

press Ctrl+D to turn on Developer Mode
Press Ctrl+D to turn on Developer Mode

  • Now press Enter and wait a minimum 15 minutes and so. It will reboot and go through a process of enabling developer mode.
  • During the enabling process, it will wipe out all the local information.
  • After the completion of the process, it will come up with a red exclamation screen. Don’t do anything until it reboots into Chrome OS.

Chromebook Varification Option for On and Off
Chromebook Verification Option for On and Off

Step 2: Install Crouton

Before going to install Crouton, let us know what it is? Crouton is a piece of software as chroot kind, developed by Google hardware engineer who loves Chromebook, which is used to create an environment on Chromebook, like android and google play on Chromebook, to install Linux based OS like Ubuntu, Linux Mint, and others using the same hardware specification as used by Chrome OS. Though there are many other ways available to install Linux on Chromebook this one is easy and straightforward to install, uninstall or modify. Now it’s time to go to step 2 to install Linux on Chromebook.

  • Download Crouton from the official Github Page and save it to download folder.
  • Open the Terminal by pressing Ctrl+Alt+T on your Chromebook.
  • Run the following command into Terminal to enter the Ubuntu shell :

Chromebook developer option - Shell command
Chromebook developer option – Shell command

  • Run the following command into the Terminal to install Crouton :
sudo sh -e ~/Downloads/crouton -t xfce

Installing Crouton in Chromebook
Installing Crouton in Chromebook


If you are using the Crouton Integration extension, run the following command :

sudo sh ~/Downloads/crouton -t xiwi,xfce
  • If you’re doing this on a Chromebook Pixel, Asus flipbook or any touchscreen Chromebook then change it to :
sudo sh -e ~/Downloads/crouton -t touch,xfce
  • As the developer mode increases the security vulnerability of the system, you can encrypt the desktop password for extra security measurement by using -e flag. You can get more information regarding this from the official GitHub page.
  • It will take some time for installing Crouton. When it is completed, it will prompt for new username and password for new Ubuntu installation. To enter the user credentials as it asked.
  • After finishing the installation, run the following command to start the Ubuntu Linux desktop environment :
sudo startxfce4

Run Ubuntu Linux System for the first time
Run Ubuntu Linux System for the first time

  • Up to this time, I have shown how to install the Ubuntu Xfce desktop environment. But if you want to install the Unity desktop environment, just replace “xfce” with the “unity” without the quote in the above command. And while starting the desktop environment replace with “startunity” without the quote. Moreover, if you like to install KDE, LXDE, and any other Linux desktop environment, See the Crouton GitHub page for more information.

Step 3: Optimize The Linux Desktop Environment

  • You can switch back and forward between chrome os and ubuntu by using Ctrl+Alt+Shift+Back and Ctrl+Alt+Shift+Forward for ARM-based Chromebook, and Ctrl+Alt+Back and Ctrl+Alt+Forward for an Intel-based Chromebook. For the latter command, you have to press Ctrl+Alt+Refresh to bring up the desktop.

Linux Xfce desktop Environment
Linux Xfce Desktop Environment

  • Just log out as standard PC if you want to exit the Ubuntu Linux desktop. Again run sudo startxfce4 to start the Linux desktop environment.
  • This version of Ubuntu Linux desktop does not come with lots of software. Even some of the essential apps, you will not find here. So you have to install all those vital software manually by using specific command into the Terminal.
sudo apt-get update
sudo apt-get install bash-completion ttf-ubuntu-font-family software-center synaptic


  • Disable the screensaver if you are using XFCE to avoid graphics issues in Chrome OS.
  • Use the Download folder as it is shareable for both the system.
  • It will take more 30 seconds to boot up as it’s in a developer mode. You can skip the developer mode message by pressing Ctrl+D.

Remove the Linux Desktop Environment

If you want to remove the Ubuntu Linux desktop environment and go back into the regular chrome OS, press spacebar while rebooting the system and when to re-enable OS verification prompt up. This will uninstall Crouton and restore your Chrome OS.

Some alternative way to remove the Linux. Run the following command into the Terminal:

  • Type cd /usr/local/chroots and press Enter
  • Type sudo delete-chroot * and press Enter
  • Type rm -rf /usr/local/bin and press Enter

So that’s it. Now you have a fully functional and effective Ubuntu Linux desktop along with Chrome OS. You can switch back or forward to the different system by using keystroke.

What method did you follow to install Linux on Chromebook? Do you like this tutorial? If you face any problem during this process, please let me know in the comment section and feel free to share your experience also.

The Last Words

Is this tutorial on installing Linux on Chromebook helpful? Mind if you do me a sweet favor, and tap the Social Share Button if you learned something new? It’d mean so much to me. Thanks again for spending part of your day here. Hope to see you come back. 🙂


  1. I tried to use the command after shell and here’s what it said sh: 0: Can’t open /home/chronos/user/Downloads/crouton

  2. Well that all seemed to work well until the “sudo startxfce4” command when it failed and said (quite a lot- see below)….
    …any ideas welcome! 🙂

    Build Date: 25 October 2018 04:16:21PM
    xorg-server 2:1.19.6-1ubuntu4.1~16.04.2 (For technical support please see http://www.ubuntu.com/support)
    Current version of pixman: 0.33.6
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
    Markers: (–) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (++) Log file: “/tmp/Xorg.crouton.1.log”, Time: Sat Jul 27 15:54:51 2019
    (==) Using system config directory “/usr/share/X11/xorg.conf.d”
    Error org.freedesktop.DBus.Error.ServiceUnknown: The name org.chromium.LibCrosService was not provided by any .service files
    method return time=1564239291.442411 sender=:1.13 -> destination=:1.58 serial=632 reply_serial=2
    boolean true
    MESA-LOADER: failed to retrieve device information
    gbm: failed to open any driver (search paths /usr/lib/arm-linux-gnueabihf/dri:${ORIGIN}/dri:/usr/lib/dri)
    gbm: Last dlopen error: /usr/lib/dri/exynos_dri.so: cannot open shared object file: No such file or directory
    failed to load driver: exynos
    EGL_MESA_drm_image required.
    Fatal server error:
    (EE) AddScreen/ScreenInit failed for driver 1
    Please consult the The X.Org Foundation support
    at http://wiki.x.org
    for help.
    (EE) Please also check the log file at “/tmp/Xorg.crouton.1.log” for additional information.
    Error org.freedesktop.DBus.Error.ServiceUnknown: The name org.chromium.LibCrosService was not provided by any .service files
    method return time=1564239291.662909 sender=:1.13 -> destination=:1.60 serial=633 reply_serial=2
    boolean true
    (EE) Server terminated with error (1). Closing log file.
    /usr/bin/xinit: giving up
    /usr/bin/xinit: unable to connect to X server: Connection refused
    /usr/bin/xinit: server error
    Unmounting /mnt/stateful_partition/crouton/chroots/xenial…

    • this is a shot in the dark, but you might have jus installed it wrong, if those lines you showed are correct then what happened is that the system tried to access something that was not provided by its files, and then tried to access some other folders but for some reason could not do it.

  3. Idk what happened but its not taking my password. Is there a way to fix this? Maybe turn off the password? Please help.

    • Installed. All is well. But looking in the Ubuntu software center app store. Steam shows up but when clicking on it, a prompt comes up saying “not found. There isn’t a software package called steam in your current software sources.” Where do I go from here?

    • Security Feature Note: When you are attempting to setup your password, you will NOT see anything as you type. It is accepting your input though. Just keep typing normally; this is a security feature.

  4. I tried to follow the instructions using the “-e” flag, i.e., using the syntax: “sudo sh ~/Downloads/crouton -e -t touch,xfce” which then brings a message to enter a password. However, at that point the entry point freezes and I cannot enter a password. How do I fix this. The machine I’m using is a brand new ACER Chromebook R11 with a celeron quad core processor, 4GB RAM and 32 GB drive. Thank you for your help.

    • Probably not, if they are like mine and have administrator mode off along with a number of things disabled.

  5. If I’m not mistaken, both OSs are running at the same time. Isn’t it? If true, could be the RAM or CPU usage be affected?


Please enter your comment!
Please enter your name here

Latest Post

50 Simple and Useful dmidecode Commands for Linux

The dmidecode command in Linux allows users to retrieve sensitive hardware-related information directly from the command line. This way,...

The 10 Best IP Address Management Tools for Linux

IP address management takes a large part in the life of modern network admins. Linux admins are expected to...

25 Must Know Nginx Commands for Developers and Admins

Nginx is one of the most popular web servers among Linux and BSD users due to its rich feature...

40 Useful Linux Server Commands for Beginners in 2020

Most of the virtual world is powered by Linux today. Admins and network owners like to take control of...

Most Talked Post

Linux or Windows: 25 Things You Must Know While Choosing The Best Platform

Choosing the best platform - Linux or Windows is complicated. Because both the system is versatile and capable of...

Most Stable Linux Distros: 5 versions of Linux We Recommend

At the very beginning, I would like to mention why the term ‘Stable’ comes in relation to Linux OS...

15 Best Things To Do After Installing Linux Mint 19 “Tara”

Linux Mint is one of the best Linux distros for newcomers, especially who comes from other Operating Systems like...

Linux Mint vs Ubuntu: 15 Facts To Know Before Choosing The Best One

Ubuntu and Linux Mint are two popular Linux distros available in the Linux community. Ubuntu is a derivative of...

Editors' Pick

Centos vs RedHat: 15 Interesting Facts to Know

Here, we will know about CentOS vs Redhat. Before...

Best Linux Software: Our Editorial List of Essential Linux Apps

Being a new Linux user, sometimes you may feel...

Linux PDF Editor: Top 15 Reviewed and Compared

Portable Document Format - PDF is one of the...

Top 30 Best Game Emulator Consoles for Linux System in 2020

Everybody cherish those days when we used to play...

Best Cryptocurrency To Invest In: 20 Top Cryptocurrency List for You

Cryptocurrency refers to the digital currency that belongs to...

Top 20 Best Linux VoIP and Video Chat Software in 2020

The Internet has become an integral part of our...