Chromebooks are wonderful machines for the cost, yet they run an operating system that not everyone is happy with. ChromeOS is very web based, meaning everything you do requires an Internet connection. The other major pitfall of ChromeOS is the lack of professional grade applications. Most apps on the OS are little more than links. More recently, desktop Chrome apps have started to appear, but they’re no where near the caliber of native Linux programs like Gimp, OpenShot or Audacity (and literally thousands more). That’s where Crouton comes in. This little script will allow you to get the best of both worlds; the leanness of ChromeOS and the performance and reliability of Ubuntu Linux.
Disclaimer: This guide is intended as a helpful “how to”. dotTech and its writers are not responsible for any gain or loss (including but not limited to bricked devices) incurred as a result of following this guide. You may void your warranty by following these procedures.
Before We Begin
Crouton is installed with the ChromeOS shell, and uses a Chroot type environment to run both ChromeOS and Ubuntu simultaneously. This allows you to get the best of both worlds.
Please check https://github.com/dnschneid/crouton  regularly for any news on Crouton, updates or ways to resolve issues you may be having.
Enabling Developer Mode
Ubuntu cannot be installed without enabling developer mode in ChromeOS. Once developer mode has been enabled, you’ll be able to access the ChromeOS terminal shell.Most older Chromebooks have physical developer mode switches. You’ll need to determine where this switch is. It’s best to do a quick Google search of your make and model.
Enabling developer mode on Chromebook Pixel and Samsung Chromebook: Hold down the esc and refresh key at the same time and briefly press the power button. Doing so will bring you to recovery mode.When at the recovery screen, press Ctrl + D. After pressing Ctrl + D, a prompt will appear. You’ll need to agree to it to move further.
Note: Just like unlocking an Android tablet, enabling developer mode will clear ALL local data on the device. Be prepared for this.
From now on, whenever you boot into ChromeOS, you’ll be greeted with a warning screen. You’ll need to press Ctrl + D to continue each time. Once developer mode is enabled, boot into it to continue the guide.
How To Install Ubuntu On A Google Chromebook Using Crouton
Before we can install Ubuntu, we need to download the script. Click this link  to download the latest version of Crouton to your Chromebook. When the Crouton script is downloaded, open the ChromeOS developer shell. This is done by pressing Ctrl + Alt + T on your keyboard. When the terminal is open, type shell and press enter. This will bring you to a bash shell.
In the ChromeOS bash shell, enter the command below. This will execute the Crouton script. It will install Ubuntu with the XFCE Desktop environment.
Ubuntu with XFCE
sudo sh -e ~/Downloads/crouton -t xfce
The process will take a bit of time, be patient. Do NOT turn off your Chromebook. Also, plug it in to make sure it stays powered on. The average time for installation is about 30 minutes.
After the installation, enter these commands in the ChromeOS Shell to switch to your newly installed Ubuntu chroot.
sudo enter-chroot startxfce4
Switching Between ChromeOS and Ubuntu
- ARM Based Chromebooks (Samsung): Ctrl+Alt+Shift+Forward, Ctrl+Alt+Shift+Back
- Intel/AMD Based Chromebooks (Acer, Pixel and etc): Ctrl+Alt+Back or or Ctrl+Alt+Forward along with Ctrl+Alt+Refresh
Exiting the chroot can be done by simply logging out of the XFCE session
Checking for Updates
Updating is very important no matter the system you are running. To check for Crouton updates, open a terminal in the Ubuntu chroot and enter the command below.
croutonversion -u -d -c
Once the first command is entered, exit the chroot and go into ChromeOS. Once in ChromeOS, open a shell (Ctrl + Alt + T then type Shell) and enter the command below. This doing so will install the updates.
sudo sh -e ~/Downloads/crouton -u -n chrootname
Chrootname should be replaced with the version of Ubuntu that is installed. For instance, if Ubuntu 12.04 Precise is installed, the default chrootname will be called “precise”.
That’s it! You’ve now got Ubuntu and ChromeOS both working on your Chromebook! Enjoy!
[via github ]