sodcalculator

10 Tech How-To

Install Linux Distro From Android: Full Guide

Guide 10-12470 · Updated · Step by step

Yes, you can install a Linux distro from an Android device, but the method depends on whether you want a full dual-boot installation or a chroot-based environment that runs alongside Android. For most users, the practical answer is to use a chroot app like Termux or UserLAnd, which lets you run Ubuntu, Debian, or Kali without rooting or modifying your phone’s storage. If you specifically need a desktop Linux installed to your phone’s internal storage or SD card as a traditional dual-boot setup, that requires an unlocked bootloader, a custom recovery, and a device with official or community support — a much riskier process.

Understanding the Two Main Approaches

There are two fundamentally different ways to run Linux on an Android phone. The first is a chroot environment, where Linux runs inside a sandboxed directory on your Android filesystem, sharing the same kernel. This is the easiest and safest method, and it is what most people actually want when they ask this question. The second is a dual-boot installation, where Linux is written to a separate partition and you choose which OS to boot at startup. This is closer to what you would do on a PC, but it is far more involved on Android.

Chroot methods do not require root access in most cases (UserLAnd, Termux with proot), while dual-boot almost always requires an unlocked bootloader and a custom recovery like TWRP. The choice between them comes down to whether you need full hardware access (dual-boot) or just a usable Linux environment for development, scripting, or learning (chroot).

Background: Why Android Makes This Possible

Android itself is built on a Linux kernel, so the underlying system already speaks the same language as desktop Linux distributions. However, Android’s userspace — the libraries, init system, and app framework — is entirely different from what you find in Ubuntu or Fedora. This is why you cannot simply copy a Linux ISO to your phone and boot it. The kernel on your phone is compiled with Android-specific drivers and security patches, and it is locked down by SELinux policies.

That said, the kernel is still Linux, which means you can run a full userland (the collection of programs and libraries that make up a distribution) on top of it. Chroot tools exploit this by unpacking a root filesystem (like Ubuntu’s) into a folder and then “chrooting” into it, effectively tricking the processes into thinking that folder is the root directory. The proot variant used by Termux does this without needing root privileges by intercepting system calls.

How to Install a Linux Distro Using Termux (No Root)

Termux is a terminal emulator for Android that provides a minimal base system. You can install a full Linux distribution inside it using a script called proot-distro. Here is the general process, which works on current versions of Termux (as of 2024-2025):

  1. Install Termux from F-Droid (the Google Play version is outdated and unsupported).
  2. Open Termux and run pkg update && pkg upgrade to update the package list.
  3. Install proot-distro by running pkg install proot-distro.
  4. List available distributions with proot-distro list. You will see options like Ubuntu, Debian, Kali, Arch, and Alpine.
  5. Install one, for example proot-distro install ubuntu.
  6. Log into it with proot-distro login ubuntu.

Once inside, you have a working command-line Ubuntu environment. You can install desktop environments (like XFCE) and use a VNC viewer app to get a graphical interface, but that is an additional step. This method does not affect your Android system, and you can delete the entire Linux environment by removing the Termux app or the proot-distro folder.

How to Install Using UserLAnd (Simpler GUI)

UserLAnd is an app that provides a more user-friendly front-end to the same chroot approach. It does not require root, and it walks you through the installation of Ubuntu, Debian, Kali, or Alpine with a graphical interface option. The steps are:

  1. Install UserLAnd from the Google Play Store or F-Droid.
  2. Open the app and choose a distribution (e.g., Ubuntu).
  3. Choose whether you want a command-line session or a desktop environment (XFCE or LXDE).
  4. Create a username and password for the Linux environment.
  5. Wait for the filesystem to download (several hundred megabytes).
  6. Launch the session. If you chose desktop, it will give you a VNC address (usually localhost:1) that you open in a VNC client like bVNC.

UserLAnd is the better choice for beginners because it handles the networking and VNC setup automatically. However, it can be slower than Termux because of the extra overhead, and some users report occasional crashes on newer Android versions.

Installing a Dual-Boot Linux (Advanced)

If you really want a traditional dual-boot setup where your phone boots directly into Linux, you need a device with an unlocked bootloader, a custom recovery, and a Linux image built for your specific hardware. This is not something you can do with a generic installer. The process generally looks like this:

  1. Unlock the bootloader (this wipes your phone and voids warranty on most devices).
  2. Install a custom recovery like TWRP.
  3. Find a Linux distribution that supports your device. Projects like postmarketOS and Ubuntu Touch maintain device-specific images, but coverage is limited to a handful of phones.
  4. Flash the Linux image to a partition (often the system or a dedicated partition).
  5. Use a boot manager like the one built into TWRP or a separate app like MultiROM (if available for your device) to choose between Android and Linux at boot.

This method is risky. A wrong flash can brick your device, and you lose access to Android’s camera, cellular, and other proprietary drivers unless the Linux distro specifically supports them. For most people, this is not worth the effort compared to a chroot environment.

Choosing Between Termux, UserLAnd, and Dual-Boot

The right choice depends on your goal:

  • Termux + proot-distro: Best for developers who want a fast, scriptable environment with full package access. It is lightweight and stays out of your way.
  • UserLAnd: Best for beginners who want a graphical Linux desktop without dealing with the command line. It is slower but more approachable.
  • Dual-boot: Best for tinkerers who want to test hardware compatibility or run a dedicated Linux phone, but only if your device is supported by an active project.

Consider that chroot environments cannot directly access hardware like the GPU or modem, so gaming and phone calls are out of scope. Dual-boot can give better hardware access, but only if the distro has drivers for your specific chipset.

Common Problems and How to Fix Them

Several issues come up frequently when installing Linux from Android:

  • Termux from Play Store is outdated: The Play Store version is no longer maintained. Uninstall it and download the latest build from F-Droid.
  • Proot-distro fails to install: This usually happens when your storage is full or the download is interrupted. Clear space and try again, or run proot-distro remove <distro> and reinstall.
  • No internet inside the Linux environment: For proot-distro, ensure you have run pkg update in Termux first. For UserLAnd, check that the app has network permissions in Android settings.
  • VNC connection refused: Make sure the VNC server started inside the Linux environment (usually it does automatically with UserLAnd). For manual setups, run vncserver inside the distro.
  • Performance is slow: Chroot environments are slower than native because of the system call translation. Use a lightweight desktop (XFCE) and avoid heavy apps.

Safety and Risks

Chroot methods (Termux and UserLAnd) are safe for your phone’s integrity — they do not modify system partitions or require root. The main risk is data loss if you accidentally delete the app’s data folder, so back up anything important inside the Linux environment. Dual-boot, on the other hand, carries a real risk of bricking your device. Unlocking the bootloader wipes your phone, and flashing an incompatible image can make it unbootable. Always research your specific device model and follow guides from the distro’s official wiki. Do not attempt dual-boot on a device you cannot afford to lose.

Frequently Asked Questions

Can I install Linux without rooting my Android phone? Yes, both Termux with proot-distro and UserLAnd work without root. They use a userspace emulation layer that does not require modifying system partitions.

Will Linux on Android run faster with root? Not necessarily. Root allows you to use a true chroot instead of proot, which can be slightly faster, but the difference is minor for most tasks. The main bottleneck is the ARM processor and limited RAM, not the root status.

Can I install a full desktop Linux like Ubuntu on my phone? Yes, but it will run inside a window (via VNC) rather than replacing Android. You get a full desktop environment, but it shares the screen with Android and uses the same kernel.

What is the best Linux distro for Android? Ubuntu and Debian are the most widely supported in Termux and UserLAnd. Kali is popular for security tools, but it is not faster or better for general use. For dual-boot, check postmarketOS or Ubuntu Touch for your specific device.

Will installing Linux void my phone’s warranty? Chroot methods do not void your warranty because they do not modify the system. Unlocking the bootloader for dual-boot will void the warranty on most devices, and some manufacturers refuse service even after relocking.

Can I run Linux on a phone with 2GB of RAM? Yes, but you should stick to a lightweight desktop like XFCE or just use the command line. Ubuntu’s default GNOME desktop will be too slow. Termux without a desktop is very usable even on 1GB of RAM.

Related

General steps for current mainstream versions; menus can differ by device and version. See the disclaimer or report an error.

More in this bed

The whole Tech How-To bed →