How to Install Linux on a Chromebook: A Practical Step-by-Step Guide
Learn how to install Linux on a supported Chromebook using ChromeOS’s built-in Debian environment, plus apps, files, backups, troubleshooting, and limits.
If you want Linux command-line tools, desktop apps, code editors, or development utilities on a Chromebook, the safest and most practical route is usually ChromeOS’s built-in Linux development environment. Google also calls this Linux on ChromeOS, and the underlying project is commonly known as Crostini. It runs a Debian Linux environment alongside ChromeOS rather than replacing ChromeOS.
This guide was checked against Google and Chromium documentation on September 10, 2026. The important distinction is that enabling the built-in Linux environment is a supported ChromeOS feature and does not require Developer Mode. Replacing ChromeOS with a standalone Linux distribution is a different, device-specific project and is not the normal setup described by Google.
On a supported Chromebook, open Settings > About ChromeOS > Developers. Next to Linux development environment, select Set up, then follow the prompts. Google says setup can take 10 minutes or more. When it finishes, a Terminal window opens and you have a Debian environment where you can use Linux commands and install packages with APT. See Google’s official Linux setup instructions.
| What you want | Best starting point | What to know |
|---|---|---|
| Linux command-line tools | Built-in Linux development environment | Supported on compatible Chromebooks and integrated with ChromeOS |
| Linux desktop apps | Built-in Linux development environment | Many Debian-compatible GUI apps work, but hardware integration has limits |
| Web, Python, Git, VS Code-style development | Built-in Linux development environment | Usually the simplest option because ChromeOS remains intact |
| Replace ChromeOS completely | Advanced, model-specific research | Not the standard Google-supported Linux setup covered here |
You do not need to disable ChromeOS verification or enable the boot-time Developer Mode screen just to use this feature. The official Linux on ChromeOS FAQ explicitly says Developer Mode is not required.
Start by refreshing Debian’s package index. Open Terminal and run:
sudo apt update
APT is Debian’s package manager. It downloads package information and installs software from configured repositories. For example, to install Git:
sudo apt install git
Google’s ChromeOS developer documentation recommends updating the APT repository index as a good first step. Its Linux setup reference also explains that graphical Linux apps can integrate with the ChromeOS Launcher.
If the program is available in Debian’s repositories, use Terminal:
sudo apt update
sudo apt install package-name
Replace package-name with the actual Debian package name. This is generally the cleanest method for command-line utilities and many open-source applications.
ChromeOS also supports installing Debian .deb packages through the Files app. Google’s developer documentation notes that you can download a compatible .deb file and double-click it to start the installation flow. This is useful for applications whose publishers provide Debian packages directly.
Pay attention to CPU architecture. The Linux container uses the same architecture family as the Chromebook, so an x86_64 package will not normally be the right choice for an ARM Chromebook, and vice versa. The ChromeOS Linux FAQ explains how the container architecture follows the device.
The simplest method is to use the Linux files area in the ChromeOS Files app. Files stored there belong to the Linux environment. If you want Linux apps to work with an existing ChromeOS folder without copying it, you can share that folder with Linux.
/mnt/chromeos.Google documents both copying files into Linux files and using Share with Linux in its official setup guide. Remember that permissions and files shared with the Linux environment are available to Linux apps in that same environment, so only share folders that those apps genuinely need.
ChromeOS can back up Linux apps and files into a .tini backup file. This is useful before major development changes, before removing Linux, or before moving to another compatible Chromebook.
Open the Linux section in ChromeOS Settings and use Back up and restore. Google’s backup and restore instructions explain the current workflow. One important limitation is that a full restore to another Chromebook requires compatible architecture; for example, an x86 Linux environment is not interchangeable with an ARM environment as a full restore.
Also note that Linux container data is not automatically the same thing as ChromeOS cloud sync. Google’s Linux FAQ says you remain responsible for data inside the container. If a project must be available across machines, consider keeping the project in a folder that is backed up or synced separately.
| Problem | Likely reason | What to do |
|---|---|---|
| No “Linux development environment” option | Unsupported older device, managed policy, account limitation, or outdated ChromeOS | Check the official support list, update ChromeOS, and ask your administrator if the device is managed |
| Setup hangs or fails | Temporary system, network, or storage problem | Restart the Chromebook, check connectivity and free space, then retry |
| APT errors or old package information | Package indexes or installed packages need refreshing | Run the update commands below and restart Linux if needed |
| Linux app cannot see a ChromeOS folder | The folder has not been shared with Linux | Use Share with Linux in the Files app or copy the file to Linux files |
| Specific peripheral or graphics feature does not work | Linux on ChromeOS intentionally limits some hardware access | Check Google’s current limitations before assuming the app itself is broken |
For package-related problems, Google’s Chromebook Help currently recommends:
sudo apt-get update && sudo apt-get dist-upgrade
Then restart if necessary. You can also right-click the Terminal app and choose to shut down Linux, then reopen Terminal to start the environment again.
The built-in Linux environment is designed to balance Linux flexibility with ChromeOS isolation. It is not identical to running Linux directly on a conventional laptop. Google’s current Chromebook Help page lists limitations around cameras, Android Emulator support, USB devices, and hardware acceleration including GPU/video decode. At the same time, the more technical ChromeOS developer documentation describes accelerated OpenGL graphics in the Linux runtime. The practical takeaway is that graphics and hardware support is not equivalent to a native Linux laptop and can vary by feature and workload.
That matters most for GPU-heavy creative applications, low-level hardware tools, kernel-module-dependent software, or specialized USB equipment. If your main goals are programming, Git, command-line utilities, web development, editors, and ordinary Linux desktop apps, the built-in environment is usually a much better fit. For hardware-sensitive software, check the app’s requirements and Google’s current support notes before assuming it will work.
Yes, the official ChromeOS Linux FAQ says you can run Docker containers or other container formats inside the Linux container after installing the relevant packages. That makes a Chromebook practical for many web-development and local-service workflows. Performance will still depend on your Chromebook’s RAM, CPU, storage, and the size of the workloads you run.
For most people asking how to install Linux on a Chromebook, no replacement is necessary. The built-in Debian environment keeps verified ChromeOS, normal Chromebook updates, Android/web apps, and Linux tools on the same machine.
A full ChromeOS replacement is a separate advanced path. Compatibility varies by exact Chromebook model, and generic instructions can be unsafe because firmware, keyboard, audio, touchpad, sleep, graphics, and recovery behavior differ. Google does not present full ChromeOS replacement as the normal Linux installation workflow for Chromebook users. If you specifically need a different bootable operating system, research your exact board and hardware model first, back up all local data, and understand how to recover ChromeOS before changing firmware or partitions.
sudo apt update.For the most current setup flow, always check Google’s Chromebook Linux Help page and the official ChromeOS developer Linux documentation, because menu placement and supported capabilities can change as ChromeOS evolves.
Learn how to install Linux on a supported Chromebook using ChromeOS’s built-in Debian environment, plus apps, files, backups, troubleshooting, and limits.
Learn how to check your Ubuntu version from Settings or the terminal, understand release versus kernel versions, fix common command issues, and verify the result.