Your Android device is like a mini computer running on a Linux kernel. Ubuntu, which is also a flavor of Linux, is generally for desktop PCs, netbooks, and laptops. Since Ubuntu relies on the Linux kernel, is it possible to run Ubuntu on an Android device?

XDA Developers member tiborr answers that question by sharing a guide on how to setup and run Ubuntu on your Samsung Galaxy S3 GT-I9300, which, because of its awesome quad-core power and more-than-enough storage, is capable of running Ubuntu.

Using the Ubuntu Installer app and his edited script, the said developer was able to run the computer-based Ubuntu on a Samsung Galaxy S3 GT-I9300.

Quite a few find it a bit pointless to run a computer-based Linux distro on an Android phone, but we here at Android Authority I think it’s cool to be able to show it off to your geeky friends. Besides, it’s a showcase of the power of Linux and of opensource software in general.

If you want to run Ubuntu on your Samsung Galaxy S3 GT-I9300, continue reading the rest of this guide. Take note that the following steps are not noob-friendly and may need some technical skills and knowledge about Android development.

Warning

The instructions in this guide are intended for use with the Samsung Galaxy S3, model number GT-I9300. Applying these instructions on another device or model may produce undesired outcomes.

The information in this guide is provided for instructional and educational purposes only. There is no guarantee that these instructions will work under your specific and unique circumstances.

Use these instructions at your own risk. We shall not hold any responsibility or liability for whatever happens to you or your device arising from your use of the info in this guide.

Read and understand the whole guide first before actually performing the instructions.

Requirements

Samsung Galaxy S3 GT-I9300 with root access and running on a kernel that has loopback support If you haven’t rooted your phone, check out this guide on how to root and flash ClockworkMod Recovery on your phone via CF-Root 6.3. Users report that the CF Kernel does pack loopback support and works with the setup described in this guide. Other users also report that the setup works even on stock ROMs. If you don’t find this guide working for you, you might want to try installing a custom kernel on your phone.

Download and install Ubuntu Installer Free to your phone from the Google Play Store.

Enable USB Debugging on your phone by going to Settings > Developer’s options > USB Debugging

Backup all personal data on your phone to make sure you have a copy of your personal data (e.g., contacts, SMS, MMS, Internet settings, Wi-Fi passwords, and the like) in case the procedure in this guide erases such data. For backup tips, check our guides on how to sync your data to the cloud and how to create local backups of your mobile data.



Instructions

Launch the Ubuntu Installer Free app. Launching the app will require you to download 3 additional apps: android-vnc-viewer

Android Terminal Emulator

BusyBox Download the Ubuntu image file via the Ubuntu Installer Free app. You will have to choose either the small or large Ubuntu image file. You do not need to download the script suggested by the app because, according to tiborr, it doesn’t work with the Samsung Galaxy S3. Download developer tiborr’s edited script (ubuntu.sh, 1.4 kB). Using your preferred file manager app (e.g., ES File Explorer or ASTRO File Manager), navigate to your phone’s internal SD card and create a new folder named “ubuntu” (that is, /sdcard/ubuntu) Extract the downloaded Ubuntu image file. Move or copy the said file to /sdcard/ubuntu directory. Move or copy tiborr’s ubuntu.sh script into the /sdcard/ubuntudirectory. There should be an *.img file and a *.sh file inside the folder. Open the Terminal Emulator app and enter the following commands: su

cd /sdcard/ubuntu

sh ubuntu.sh After a series of text, the terminal emulator will ask you to enter the screen size. Type 1280x720 and press Enter. On the next screen, a message Save this as default? (y/n) will appear. Type the command Y if you want to save the screen size and N if you don’t want to save it as a default screen size. Your terminal emulator will then look like this:

The script my ask you to setup a password. For our purposes, you can just use ubuntu as password. The terminal will act as an Ubuntu command line. To connect to the graphical user interface (GUI), launch the androidVNC app. Enter localhost on the IP address text field. For port number, specify 5900 as the port number. Enter ubuntu as password. Leave all other fields as they are. Tap Connect. The GUI will render and you will see the familiar Ubuntu interface. To exit, return to the Terminal Emulator session, type exit at the command line, and wait until everything shuts down.

Alternative Method

If the steps above don’t work or the script isn’t working, you can try the alternative steps below:

Follow steps 1 and 2 from the procedures above. Download this alternative script (ub.zip, 802 bytes). Create a folder named “ubuntu” on your phone’s external SD card. The location should be /mnt/extSdCard/ubuntu. Extract the downloaded Ubuntu image file and ub.zip to the ubuntu folder. There should only be an IMG file and a SH file inside the ubuntu folder. Open the terminal emulator and type the following commands: su

cd /mnt/extSdCard/ubuntu

sh ub.sh Follow step 8 and onwards from the procedure in the previous section.

Congratulations! You have successfully booted into Ubuntu on your Samsung Galaxy S3 GT-I9300. Show it off to your geek friends! You might just blow them away.