Share, , Google Plus, Pinterest,

Print

Posted in:

Linux on Android – Can You?

Linux on Android? Yes you can! Here’s how…

This is a Review/How to of  Android application called “Complete Linux Installer“. It is basically an application that allows you to run Desktop Linux distributions like UbuntuDebianBackTrack, … on your Android device. Your Android device must be rooted!

How do they do it?

Linux on Android project brings Linux to your mobile Android device through a metod known as “chroot”. You download an image of a working Linux environment, unpack it on your SD card, USB disk or thumb drive and mount it. Chroot then changes the apparent root directory for the current running process and its children. Voila, you are running a completely different Linux distro …

I was testing this application on my MK802 III device. I tested out only one Linux distribution – Ubuntu 10 with Gnome and XFCE desktop environments. Here are the pros and cons:

PROS:

  • No Linux installation needed (Linux image mount and chroot)
  • Good device support (my device works and it is not even on the working device list)
  • Main Linux distributions available (UbuntuDebianBackTrack, …)
  • First time i actually got any Linux running on Android (rockss!!)

CONS:

  • Not very useful (using VNC viewer to connect to your Linux – no youtube videos, movies, …)
  • Problems mounting loop device
  • Can’t access data from devices attached to your Android (in my case USB disk)
  • No Server Linux distro without GUI

I would find it more useful to run a Server Linux distro without GUI to run some specific applications you can’t find in Google Play store. Maybe even Backtrack for running security tests on WiFi networks or something…

How to run/install Linux on Android

1. Open Google Play Store on your Android device and download and install Complete Linux Installer application.

LinuxOnAndroid 1

2. Run Complete Linux Installer application and allow Superuser access.

LinuxOnAndroid 2

3. Click “Install guides” and choose the distro you want to install  (i chose Ubuntu 10).

LinuxOnAndroid 3

4. On the second step download your Linux distribution ZIP image and install VNC viewer and Terminal application

LinuxOnAndroid 4

5. When the Linux ZIPPED image is downloaded unzip it to get .img file. Then click “Launch” in Complete Linux Installer application.

LinuxOnAndroid 5

6. In the top right corner click “Add” and point the application to the UNZIPPED Linux distribution image.

LinuxOnAndroid 6
LinuxOnAndroid 6

7. The next step is to start your Linux On Android.

LinuxOnAndroid 7
LinuxOnAndroid 7

8. This is where i ran into a problem…

Start script could not find loop device and failed with error “Checking loop device…MISSING”, “Mounting /dev/block/loop255 on /data/local/mnt failed: Invalid argument” and “Error: Unable to mount the loop device!” .

LinuxOnAndroid 8
LinuxOnAndroid 8

9. I had to edit bootscript.sh file and edit the line where mounting of /dev/block/loop255 device is. I had to change the filesystem type from ext2 to ext3!

LinuxOnAndroid 9
LinuxOnAndroid 9

10. Now the Linux On Android started of fine.

LinuxOnAndroid 10
LinuxOnAndroid 10

11. You can now open your VNC viewer application and setup the VNC connection for your Linux distribution.

LinuxOnAndroid 11
LinuxOnAndroid 11

12. Voila! We are connected to our Ubuntu Linux running on Android device!

LinuxOnAndroid 12
LinuxOnAndroid 12

13. Browsing from Linux On Android.

LinuxOnAndroid 13
LinuxOnAndroid 13

14. LXDE Desktop.

LinuxOnAndroid 14
LinuxOnAndroid 14

Enjoy running Linux on your Android device and don’t forget to support LinuxOnAndroid project and it’s guys! Donate! 🙂

  • Carson Evans

    I had the unable to mount problem and was hoping editing the bootscript would help. Sadly after changing ext2 to ext3 the error has changed to:

    mount: mounting /dev/block/loop255 on /data/local/mnt failed: Invalid argument

    • Carson Evans

      I meant it still says**

    • Mitch

      Hello Carson and thanks for your comment! I have been playing aroung with starupt scripts too when i was testing, but could not seem to get it up and running. Hope someone else makes it and posts it online.

    • [deXter]

      I resolved it by changing the ext2 to ext4 and it works great on my Nexus 4 running Android 4.3 🙂

      • Mitch

        Good to know [deXter], thanks for the info!

    • I’m having the same exact issue. Trying to put Kali on my Note 2. I have no idea how to chage the ext4 or edit the script.

      • Mitch

        You should find the script location (use find command) and then use your favorite linux command line editor to edit it (i used vi). Regards, Mitch

    • Eric2i@outlook.com
      or
      leave message to my Twitter blog:@Eric2i

  • Pingback: Error: Unable to mount the loop device! - Kompletter Linux-Installer - Android-Hilfe.de()

  • cyon

    How do you edit the bootscript.sh? I don’t know how :/

    • Mitch

      You have to use your favorite linux editor to do this – i use “vi”. Good to know – I should write another post on how to use “vi” editor 🙂

      Regards,
      Mitch

      • Eric2i

        May be “RE”can edit the file. But in fact, after I change ext2 to ext4,i got another problem:’error:unable to mount the loop device…
        what’s that happen ?Any ideas?
        if you can help please sent a mail to my mailbox: http://www.mail.eric2i@gmail,com

  • rico

    I am using BT5 on android 4.2.2, where can I locate the bootscript.sh?

    • Mitch

      Hello rico,

      I do not know the location from the top of my head.I used “find” command to find it. you could to that to.

      Thanks and regards,
      Mitch

  • valentin

    N7 (2013), rooted, Stock Android 4.4.2
    Stuck at

    mount: mounting /dev/block/loop255 on /data/local/mnt failed: Invalid argument

    have tried ext2,3,4

    any ideas would be really welcome…

    • Vevmesteren

      got a little further now

      am here now:
      Error: Unable to attach image to loop device!

      still stuck though…

      • Anmol Malhotra

        I’m stuck at unable to attach image to loop device… Help.. Thanks

      • Micheal

        hi,does it work now ?can you post how you fits the problem.thank you.

  • Anmol Malhotra

    I’m stuck at unable to attach image to loop device… Help.. Thanks

  • George

    Nexus 7 (2013), rooted, Stock Android 4.4.2
    same problem, still stuck at unable to attach image to loop device, any body got it working?
    please help, thanks.

  • The script bootscript.sh can be found in the directory:
    /data/data/com.zpwebsites.linuxonandroid/files

  • Micheal

    when i change ext2 to ext4 the error change to Invalid argument ,Error:Unable to mount the loop device!
    when ext2 it’s Error is :no such device.
    who can help me.ths

  • Micheal

    my android version is 4.2.2 .(huawei emotion 2.0 mate 2)
    the code is:
    u0_al47@android:/$
    u0_al47@android:/$cd /sdcard/ubuntu
    u0_al47@android:/sdcard/ubuntu/ $ su
    sdcard/ubuntu/ubuntu-13.10.LARGE.ex4.img
    Checking loop device… FOUND
    mount:mounting /dev/block/loop255 on /data/local/mnt failed
    :Invalid argument
    Error:Unable to mount the loop device!
    1|u0_a147@android:/storage/emulated/0/ubuntu #

    can anyone help me ?thank you very much.

    • jerin p joseph

      hi i found the problem for many of us facing. its simple download superuser pro from somwhere install update try these

  • Lakshmeesha T

    how to edit bootscript.sh as you mentioned in step 9

    • Mitch

      Hi Lakshmeesha T. You can edit it with a simple “vi” command and vi editor. Regards, Mitch

  • Rokas Jasonas

    You can check if your device supports loop device with this app:
    https://play.google.com/store/apps/details?id=com.rokas.loopdevicecheck

  • Ailyn

    Can you explain me again how did u solved this: Error: Unable to mount the loop device! ?
    I still try to solve this error.

  • Muneer Ammar

    Hi, when I open the Bootscript.sh file I found that I have ext4 not ext2 …. ? So I tried to change it but it did not work …. and my device is a loop device. I tried everything but I could not
    I have note 3 .. Android 4.3 …
    Please help me

  • Marouane EL Aouina

    how did you change the filesystem type from ext2 to ext3 please help