Install Ubuntu / Debian in any android phone

This is a Tutorial to install Ubuntu/Debian in any Android mobile.

* Installing Ubuntu or Debian Linux does not format your Android OS or change anything to your phone. The Operating Systems run over the underlying Android OS which continues to function as normal 🙂

Choosing your Linux OS:                                                         

There are few things you must be aware of before installing Ubuntu/Debian on youe Android Phone
Ubuntu does not support earlier ARM CPUs like the ones used in the Motorola Cliq. Samsung Galaxy Fit (ARMv6), Samsung Galaxy Y, etc.

( Reason behind this is , Your Android OS must support loop devices.  Most newer Android smartphones/tablets come with this support so we can mount our Ubuntu image as a loop device.  If not, you will either have to build your own kernel with support for loop devices or you can try an aftermarket ROM for your phone as most aftermarket ROMs come with support for it. )

You need at least an ARMv7 CPU like the kind found in the Motorola Droid, Samsung Galaxy S,HTC EVO 3D, Sony Experia Play, etc. most newer phones (Hummingbird, Snapdragon, Tegra2, etc.).So you can Install Ubuntu if you have  ARMv7 or newer Processor.

If you have ARMV6 or any other moderate Processor don’t be sad, because Debian supports the CPU on practically all Android devices, so if you prefer Debian, or you can’t run Ubuntu, choose the Debian download link.

* If you’re not sure what CPU your device has, look up your device on, click the link under CPU, and read the line for “Supported Instruction Set(s)”.

e.g. : My Phone which is a ” Samsung Galaxy Fit”  uses ARMV6 Instruction Sets.

Hardware Required:

an Android Phone
SD Card with more than 2GB of free Space

Android root environment:

Most important! Your Android device should be “rooted” because you need root access to run Ubuntu/Debian off your Android. If your device is not rooted you have to root your device.

Linux Operating System:

Download suitable OS from the following Link:

linux.ubuntu-natty.tar.bz2 Ubuntu 11.04 (Natty)

linux.ubuntu-oneiric.tar.bz2 Ubuntu 11.10 (Oneiric)

linux.debian-squeeze.tar.bz2 Debian 6.0 (Squeeze)

Applications Required:

BusyBox Installer
A terminal emulator like Better Terminal Emulator (Recomended) or Terminal Emulator.

Optional Apllications:


Step 1:

(Mount the SD card on your computer.)
Extract the .tar.bz2 file you downloaded to your SD card. You should now have a folder named “linux” on the root of your card.
(Unmount the SD card.)
Open Busybox Installer, and install Busybox.
Open Better Terminal Emulator,  and install Better Terminal Emulator.

Step 2:

Open your terminal emulator. (If using ConnectBot, connect to ‘local’, not ‘ssh’.)
Run the following commands:


( If Prompt for Superuser Request then allow )

cd /sdcard/linux



If you don’t see any errors, Linux is now installed.

Step 3:

Open your terminal emulator.

To start a chroot session


To start the SSH server

linux ssh

You can then use ConnectBot (SSH: user@localhost) on your device, or any SSH client to connect to your device. See Login Information, below.

To start a VNC session

( Firest you need androidVNC to be installed , then type the following in terminal )

linux vnc

The first time you run VNC, it will prompt you to create a VNC password.
You can then use androidVNC (host: localhost port: 5901), or any VNC client to connect to your device.

Configure The VNC App as follows:

Note: The default desktop environment is icewm. If you wish to replace it, for example, with LXDE:
Run the following as root in Linux:
apt-get autoremove icewm- lxde+
Secure your Log in Password:

Please remember to change these passwords if you are planning on using the SSH server. Malicious people can do Very Bad things to your device if you don’t.
There are two accounts included in the images:

After a successful connection to host you will  be able to use Ubuntu / Debian in graphical interface just like in your PC ! It will keep your Android OS as it is and just run in the upper layer over it 🙂

Linux vs Linux Terminal Emulator :

Terminal Emulator only Emulates Linux terminal, but after Linux Installation you can get full features; more than just the limited commands which runs on Android shell rather than Linux Shell.

Please Leave your Feedback and Queries below. Thank You  🙂


Posted by Riddhipratim Sengupta (original author of this post in several other forums)


  1. Great blog here! Also your site a lot up very fast! I wish my website loaded up as quickly as yours lol

  2. hey great, didn’t know this.. wanted to install but will there any issues related to network?

  3. If some one wishes expert view on the topic of running a blog after that i advise him/her to go to see this blog, Keep up the
    pleasant job.

Leave a comment

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