Chromebooks may have started life as very basic laptops that were useless without an internet connection, but they have become more powerful and more useful with each passing year. Now, not only is it possible to run Linux on your Chromebook, you can access the operating system through a browser window.
The tool you need to get familiar with is Crouton, which installs a version of Ubuntu right on your Chromebook alongside Chrome OS. Before you get started, you should probably create a recovery image of your Chromebook, but if you're careful, there shouldn't be any problems during installation.
Next, put your Chromebook into developer mode. You'll need to run a web search for instructions on how to do this as it varies from Chromebook to Chromebook (there's often a physical switch somewhere). All the data on your Chromebook will be wiped, but it's all in the cloud, right? You might want to check the local SSD anyway, just to be sure.
You'll see a rather scary-looking warning message every time you boot up into developer mode, but it's really just explaining that some of the usual Chrome OS security features have been disabled so you can access the deeper layers of the operating system. Just be careful what you choose to install.
Installing and running Linux
With that done, you're ready to install Linux. On your developer mode Chromebook, go through the Chrome OS setup process, then head to the Crouton page on GitHub and download the Chromium OS Universal Chroot Environment from the link at the top. Open up a terminal window with Ctrl+Alt+T and type "shell" then Enter.
Now, you get a choice of desktop environments. Unity is the most user-friendly for newcomers to Linux, but also the bulkiest, and you really need a Chromebook with a newer Intel chipset to run it. Xfce is the most lightweight and least user-friendly, whereas KDE is somewhere in the middle. This official guide on Linux.com has some useful extra info on your choices.
Type "sudo sh ~/Downloads/crouton -t unity,xiwi" then Enter, replacing "unity" with "xfce" or "kde" if you feel the need (you can also add an "-e" flag to add encryption for extra security). For touchscreen Chromebooks, add the touch flag and a comma to the string, so the last variable would be "touch,unity,xiwi". The "xiwi" target is important for running Ubuntu in a browser window.
Crouton downloads and installs your choice of Ubuntu Linux, then prompts you for a username and password. Finally type "sudo startunity" (and Enter) to launch the OS you've installed. You can switch OSes with Ctrl+Alt+Back and Ctrl+Alt+Forward on Intel Chromebooks (add Shift if you're on an older ARM-powered Chromebook).
For the ultimate in convenience, install the Crouton Integration extension from the Chrome Web Store, which lets you run Linux inside a browser tab. You still need to launch the alternative OS first: Alt+Shift+T, then "shell" (Enter), then "sudo startunity" (Enter), but it then launches in a floating window and you can have it open right alongside Facebook and Gmail. Your Chromebook is now ready for any Linux desktop applications.
The Developer Mode splash screen will appear every time you boot up Chrome OS (though your local data isn't wiped except for the first time). To go back to normal, press Space on the splash screen, then confirm your choice. Chrome OS wipes the Chromebook, deleting Linux, and starts up the system as normal.