How to Install Linux on a Chromebook: A Practical Step-by-Step Guide

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.

Quick answer: how do you install Linux on a Chromebook?

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 wantBest starting pointWhat to know
Linux command-line toolsBuilt-in Linux development environmentSupported on compatible Chromebooks and integrated with ChromeOS
Linux desktop appsBuilt-in Linux development environmentMany Debian-compatible GUI apps work, but hardware integration has limits
Web, Python, Git, VS Code-style developmentBuilt-in Linux development environmentUsually the simplest option because ChromeOS remains intact
Replace ChromeOS completelyAdvanced, model-specific researchNot the standard Google-supported Linux setup covered here

Before you start: a quick checklist

  • Confirm that your Chromebook supports Linux. Chromium states that, unless otherwise specified, devices launched in 2019 and later support Linux on ChromeOS. For older models, check the official device-support list.
  • Update ChromeOS. In Settings, open About ChromeOS and use Check for updates if available. Google recommends current software for the latest features and security fixes; see the Chromebook update guide.
  • Check whether the Chromebook is managed. A work or school administrator can disable Linux. If the Linux option is missing on a managed device, you may need your administrator rather than a technical workaround.
  • Make sure you have enough free storage for what you plan to install. Google does not publish a universal minimum amount of RAM, storage, or CPU speed for the Linux container; the official technical documentation simply notes that more resources generally improve performance. Choose a disk allocation that leaves room for ChromeOS and your normal files.
  • Back up important local files. Turning on the built-in Linux environment is not the same as a Powerwash, but a current backup is still good practice before changing a development environment or installing large toolchains.

Step by step: enable the Linux development environment

  1. Open Settings. Select the time in the lower-right corner of the ChromeOS shelf, then select the Settings icon.
  2. Open About ChromeOS, then Developers. This is the path shown in Google’s current Chromebook Help instructions.
  3. Find Linux development environment. Select Set up.
  4. Follow the setup prompts. Depending on your ChromeOS version, the setup flow may ask you to choose a username and disk size. ChromeOS downloads the required components and creates the Linux environment.
  5. Wait for Terminal to open. Google says the setup can take 10 minutes or more. When it completes, Terminal opens into the default Debian environment.

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.

What should you do first after Linux is installed?

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.

How do you install Linux apps on a Chromebook?

Option 1: install from APT

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.

Option 2: install a .deb package

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.

How do ChromeOS files and Linux files work together?

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.

  1. Open the ChromeOS Files app.
  2. Find the folder you want Linux apps to access.
  3. Right-click the folder and choose Share with Linux.
  4. Inside Linux, shared ChromeOS folders are made available under /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.

How do you back up the Linux environment?

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.

Linux option missing? Use this troubleshooting table

ProblemLikely reasonWhat to do
No “Linux development environment” optionUnsupported older device, managed policy, account limitation, or outdated ChromeOSCheck the official support list, update ChromeOS, and ask your administrator if the device is managed
Setup hangs or failsTemporary system, network, or storage problemRestart the Chromebook, check connectivity and free space, then retry
APT errors or old package informationPackage indexes or installed packages need refreshingRun the update commands below and restart Linux if needed
Linux app cannot see a ChromeOS folderThe folder has not been shared with LinuxUse Share with Linux in the Files app or copy the file to Linux files
Specific peripheral or graphics feature does not workLinux on ChromeOS intentionally limits some hardware accessCheck 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.

What are the current limitations?

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.

Can you run Docker?

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.

Should you replace ChromeOS with a full Linux distribution?

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.

Practical recommendation by use case

  • You want to learn Linux: enable the built-in environment and practice in Terminal. It gives you a real Debian userspace without giving up ChromeOS.
  • You want to code: use Crostini for Git, language runtimes, editors, IDEs, local web servers, and containers. This is the intended use case.
  • You want a few Linux desktop apps: try the built-in environment first. Check each app’s architecture and hardware requirements before installing large packages.
  • You need direct hardware access, custom kernel modules, or specialized graphics acceleration: verify those requirements against ChromeOS Linux limitations before buying software or changing your system.
  • You want Ubuntu or another distribution specifically: know that Google only tests the default container it ships. The official FAQ says other containers can be created through LXD, but integration may not work as reliably as the default environment.

Final checklist

  • Confirm Linux support for your Chromebook.
  • Update ChromeOS.
  • Open Settings > About ChromeOS > Developers.
  • Select Set up next to Linux development environment.
  • Finish the prompts and wait for Terminal to open.
  • Run sudo apt update.
  • Install only the tools and apps you actually need.
  • Use Linux files or Share with Linux for file access.
  • Create a Linux backup before major changes.
  • Do not enable Developer Mode just to use Crostini.

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.

Leave a Comment