How to Run Linux on Android Devices

Access the Linux kernel on your Android smartphone or tablet

Android devices are powered by a modified Linux kernel. While the kernel is restrictive, it is possible to run Linux on Android phones and tablets.

The information below applies regardless of your phone's manufacturer: Samsung, Google, Huawei, Xiaomi, etc.

Can You Run Linux on Android?

With apps like UserLAnd, anyone can install a full Linux distribution on an Android device. You don't need to root the device, so there's no risk of bricking the phone or voiding the warranty.

With the UserLAnd app, you can install Arch Linux, Debian, Kali Linux, and Ubuntu on a device. The program installs an additional layer on the device that runs the chosen version of Linux, allowing you to connect to a Linux session using SSH or VNC with the assistance of the bVNC app.

The Linux desktop doesn't always scale correctly. You may need to move the screen around while working in windows.

How to Install Linux on Android

To run Ubuntu on an Android device with UserLAnd:

  1. Download and install UserLAnd from the Google Play Store.

    Download and install UserLAnd from the Google Play Store.
  2. Launch the UserLAnd app, then tap Ubuntu.

    Ubuntu in the UserLAnd app
  3. Tap OK, then tap Allow to grant the necessary app permissions.

    OK button in permissions window for UserLAnd
  4. Enter a Username, Password, and VNC Password for the Ubuntu session, then tap Continue.

    Continue button
  5. Select VNC, then tap Continue.

    At this point, UserLAnd downloads the necessary assets for the Ubuntu session. Depending on the speed of your connection, this process can take a while. It also consumes significant bandwidth, so use Wi-Fi instead of a cellular data connection if you're on a metered plan.

    VNC option in UserLAnd
  6. You are redirected to the Google Play Store, where you can download bVNC (if you haven't done so). Tap Install, then tap the Back button on your device to return to UserLAnd.

    If asked to grant bVNC access to your Android files, tap Allow.

    Install and Back buttons
  7. Tap Sessions at the bottom of the screen, then tap the plus sign (+) in the upper-right corner.

    If you see an option for ubuntu listed, tap it to begin your Linux session.

    Sessions and Plus buttons in UserLAnd
  8. Name the session ubuntu, select apps:Ubuntu from the Filesystem drop-down menu, then select SSH for the Service Type. Tap Save (the icon in the upper-right corner) when you're done.

    Save icon in UserLAnd
  9. Tap Sessions, then tap ubuntu to launch your Linux session.

    Tap Sessions, then tap ubuntu to launch the Linux session.

How to Use Linux on Android

The Ubuntu session opens to a desktop environment, where you can zoom in with your fingers. From here, open applications by tapping the start menu in the lower-left corner. To install new Linux programs using the command terminal, tap System Tools > LXTerminal.

To close the desktop and return to Android, tap anywhere on the screen, tap the three vertical dots that appear, then tap Disconnect.

Pros and Cons of Running Linux on Android

Linux is more flexible than Android. There are many tasks you can undertake with Linux that you can't on Android, including app development, advanced image editing, and working in a real desktop environment.

That said, the small form factor of smartphones makes it difficult to pack an entire desktop GUI into a small screen. You have to use your finger to move the mouse cursor, and you won't be able to use your phone app while the Linux desktop is running.

In 2013, Canonical developed a mobile device that ran a special version of Ubuntu called Ubuntu Touch. It was a commercial flop, so the device was discontinued. No other companies have attempted to release a Linux phone due to the challenges of the GUI. The desktop would have to be completely reimagined to function on a small screen.