Do you want to learn Linux but not finding the time because of other priorities? If you own an Android smartphone you are in luck! Android uses the Linux kernel within and it is possible to run Linux utilities with a decent smartphone. In this article we will discuss some apps which can help you get going with Linux on Android.
KBOX3 installs Busybox and a number of Linux utilities under a virtual root filesystem on Android. With a suitable terminal emulator (like this or Termux) it is possible to work in a terminal based Linux environment. In addition to a base distribution, KBOX3 supports Perl, Python 3, Dropbear (ssh support), gcc, Vim (full version), and rsync (client and server) as well as a basic JAVA compilation environment. C/C++ development is supported too. It uses the dpkg based package management from Debian.
KBOX3 runs on Android 5 or recent Android 4 devices. However, it doesn’t need a rooted smartphone.
KBOX3 is not available on Google Play for obvious reasons. Check the homepage for installation options.
Now that you have Linux installed, how do you go about learning it? Try the Linux Command Library app which is very useful for beginners. At the time of writing it includes man pages for ~2.5K commands as well as a number of scripts for use in common scenarios. Examples include shutdown, reboot, lock/unlock screen, print external/internal IP address, check CPU/battery usage, take screenshot/webcam photo, play text to speech, play sound file etc.
As you can guess from the name, this app is a collection of handy commands (usage, examples) organized in multiple categories. It has a clean GUI with command highlighting. It’s of great help if you want to know how to do something on Linux as well as to check the syntax of a command.
In case all you need is to connect to a Linux box from Android over SSH (and transfer files) try VX ConnectBot (preferably with Hacker’s Keyboard).
 CppDroid is another app you may want to check out for C/C++ development on Android.