How to Run Linux on Android Devices

Affiliate Disclosure: By buying the products we recommend, you help keep the site alive. Read more.


If you’re reading this, you’ve probably used Linux before, and know that works on almost any piece of hardware. Meanwhile, you’ve got a phone in your pocket, and you know it’s versatile. So can your Android phone run Linux?

Unlock the "Essential Linux Commands Cheat Sheet" now!

This will sign you up to our newsletter

Enter your Email

Yes, it can. Here’s what you need to know about running Linux on your Android smartphone or tablet.

Wait, Isn’t Android Already Linux?

Well, it is… and it isn’t.

Android is built upon the Linux kernel, a software stack that interfaces with the hardware of a device. It basically enables an operating system to communicate with the device, whether that be a PC, a smartphone, or other hardware.

The Linux operating system should really be referred to as GNU/Linux Why Hardly Anyone Calls Linux "GNU/Linux" Why Hardly Anyone Calls Linux "GNU/Linux" You're interested in Linux and have read a few blog posts. Along the way, you've come across a funny name: GNU/Linux. But what does this mean? Read More . But over time, the word “Linux” has come to interchangeably describe the kernel as well as the various operating systems that use it, such as Ubuntu, Gentoo, and many others.

So while Android uses the Linux kernel, it doesn’t offer a desktop environment. This is what most people are thinking about when considering ways to install Linux on Android.

Why Run Linux on Your Android Device?

So why might you want a Linux desktop environment on your Android phone or tablet?

You may want to run an app that isn’t available on Android. But in most cases, you’ll simply want to gain access to some sort of desktop environment. Current Android devices have ideal hardware for a PC-like experience, and installing Linux is a great way to enable this.

Of course, you may find that the tasks you want to perform in Linux also work in Android. The only hurdle holding you back might be simultaneous app multitasking. Fortunately, this is a feature that is available in Android since 2016’s Android 7.0 Nougat.

Getting Linux running on your Android device isn’t easy, so if it’s multitasking you’re looking for, try upgrading to a modern version of Android instead.

To run Linux on Android, you have several choices. Which to use is determined by whether your Android device is rooted or not.

How to Run Linux on Android (Without Root)

The best way to get Linux running on your phone with minimum fuss is with Debian Noroot.

While useful, unfortunately this app is no longer maintained. It only runs on Android 2.3 Gingerbread to Android 5.0 Jellybean.

The benefit of Debian Noroot is that it will install Debian Jessie on your phone with a compatibility layer. This allows you to run Debian apps without having to root Android. Given how difficult rooting can be for some devices, this is useful.

Performance with Debian Noroot is not great, but it’s usable. For the best results running Linux on Android, consider rooting your device first.

Download: Debian Noroot (Free) [No Longer Available]

How to Run Linux on Android (With Root)

If you have a rooted device (here’s how to root Android The Complete Guide to Rooting Your Android Phone or Tablet The Complete Guide to Rooting Your Android Phone or Tablet So, you want to root your Android device? Here's everything you need to know. Read More ), you can install various versions of Linux on Android using the Linux Deploy tool. This is best done by first connecting your phone to a Wi-Fi network.

Start off by installing BusyBox, which provides some enhanced root capabilities.

Next, install Linux Deploy. When you run it for the first time, tap Start to ensure the root permissions are enabled, then tap the Settings button in the bottom-right corner.

Use this options menu to select your preferred Distribution. Debian, Ubuntu, Gentoo, Fedora, and many more are available to install. We used Arch Linux.

You’ll need to check the Enable box under GUI to view a Linux desktop on your phone, and ensure that VNC is selected for the Graphics subsystem. Next, check the screen resolution under GUI settings, and check you’re happy with the Desktop environment.

Finally, find the User name and User password entries, and either make a note of them, or change them to something more memorable for you.

Back out of this menu, then tap the three dots in the upper-right corner and select Install, then OK.

When this is done, install VNC Viewer from the Play Store. In Linux Deploy, tap Start to run Linux. Then open VNC Viewer, and connect to localhost:5900 to view your Linux desktop with the credentials you entered earlier.

Once up and running, you can install Linux software using the terminal in the usual manner.

Congratulations: you now have Linux running on Android!

ArchLinux running on Android

How to Install Kali Linux on Android (Root Required)

The Linux Deploy method above for running Linux distros on Android is probably the best one you’ll find. A good choice of Linux versions is available, including Kali Linux.

Fancy using Android as a penetration testing device? While various useful Android networking tools are available, the best option is a portable version of Kali Linux. Simply follow the instructions above using Linux Deploy, and select Kali Linux to install on Android.

Once installed, you’ll have a portable pen-testing solution in your pocket, ready to check the safety of any network How To Test Your Home Network Security With Free Hacking Tools How To Test Your Home Network Security With Free Hacking Tools No system can be entirely "hack proof" but browser security tests and network safeguards can make your set-up more robust. Use these free tools to identify "weak spots" in your home network. Read More your phone connects to.

4 Other Ways to Run Linux on Android

Desktop mode on Samsung Galaxy devices with DeX

While we’ve covered a few good options to run Linux on your Android device, you have some other methods available too:

  1. DeX: If you own a modern Samsung device, you have the option of switching your hardware to desktop mode with DeX What Is Samsung DeX? Use It to Turn Your Phone Into a Computer What Is Samsung DeX? Use It to Turn Your Phone Into a Computer Did you know that modern Samsung phones have a desktop mode feature called DeX? Here's what it is and how to give it a try. Read More . While not exactly a Linux operating system, this is a desktop environment with a Linux kernel, so it’s close enough.
  2. Remote Desktop to a system running Linux with Splashtop or another Android-to-Linux remote solution 15 Android Apps to Remote Control Your Linux PC 15 Android Apps to Remote Control Your Linux PC You're probably aware of apps that let you remotely control an Android device from the desktop. But what about Linux users? Well, these apps can turn your Android into a powerful Linux remote control. Read More .
  3. Limbo: This is a Linux emulator for Android, based on the QEMU emulator. However, it is difficult and time-consuming to set up, and the results are often not worth the effort.
  4. Dual boot Android with Ubuntu Touch. Connect the device to an HDMI display to see the Ubuntu Touch desktop environment. (By the way, Ubuntu Touch is one of the Linux distros that support the PinePhone 4 Mobile Linux Distros and Interfaces You Can Run on the PinePhone 4 Mobile Linux Distros and Interfaces You Can Run on the PinePhone The PinePhone runs Linux distros---but which ones? Here are four distros and interfaces you can run on the budget Linux phone. Read More .)
  5. Termux: This self-contained Linux environmen How to Use the Linux Command Line on Android With Termux How to Use the Linux Command Line on Android With Termux Termux lets you access a Linux command line on Android. Here's how to use Termux and some of its best offerings. Read More t based on the command line lets you run Linux apps on Android.

Or Just Install a Custom Android ROM Instead

Not sure installing Linux is such a good idea, but want to change the way you use your Android device? You could simply try a different version of Android with a built-in desktop. We’ve looked at Maru OS, which you can install on some devices as a custom ROM. This comes with a standard phone mode and a desktop mode, with good results.

However, another Android ROM may prove more useful to you. Need help? Read more about how to install a custom ROM on Android How to Install a Custom ROM on Your Android Device How to Install a Custom ROM on Your Android Device Ready to revitalize your Android phone or tablet? Installing a custom ROM is the best way to do that -- powering it up with even better performance and features. Read More .

Explore more about: Android Customization, Custom Android Rom, Linux, Remote Desktop.

Whatsapp Pinterest

Enjoyed this article? Stay informed by joining our newsletter!

Enter your Email

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. Mauri Godi
    December 23, 2018 at 9:57 pm

    Hiii , I need a very important help on Linux and android. I am very lazy in the area but would like to install linux desktop on my tablet genesis GT 8220s. I do not want emulator and yes linux desktop knows. So.. Do you know or could you send me some tutorial or installation steps? (I want to replace the android tablet system in linux desktop)

    If anyone can help, right now you have my acknowledgment!

    Thank you very much for your attention friend! :)

  2. David Swanson
    November 23, 2018 at 1:57 pm


  3. JIm
    November 17, 2018 at 11:59 am

    Can you still make a phone call if you install a Linux desktop?

  4. Matthew Doto
    November 16, 2018 at 3:28 pm

    Check out UserLAnd! Ubuntu or Debian, open source, actively maintained, works up to Android 9, no root required.

    • Matthew Doto
      November 16, 2018 at 3:29 pm

      Ok well I didn't mean to post the same thing twice but I thought it just didn't work

  5. Matthew Doto
    November 16, 2018 at 3:27 pm

    There's a new way to do it without root! The UserLAnd app came out within the last couple months -- full Ubuntu or Debian without root, open source and maintained actively, usable up to Android 9 Pie!
    Please update this article to reflect that

    • Joseph J Pollock
      November 20, 2018 at 8:56 am

      Thanks. The UserLAnd app appears to be for real. I just installed it and installed yad for GUI dialogs and it works. It will take some getting used to, but now I can program some simple GUI stuff without learning the Android ecosystem! I do a lot of bash programming now, so I can just start. I also installed apt-file so I can find other things when I need them.

      BTW, in case it wasn't clear, UserLAnd is just an app like any other except that it's full screen, so you can go back to the task manager and use any other app you want to and then go back to Linux. Really cool!