A personal journal.

Android, Termux dan Linux

Published on: 06/11/2024 • Updated on: 14/05/2025 • 5 min read

Termux merupakan salah satu terminal emulator yang tersedia di jagat Android, namun ada satu hal yang berbeda dengan terminal ini; pertama kali membuka aplikasinya, kamu akan disuguhi layaknya sedang menjalankan Linux.

Instalasi

Dimana saya bisa menginstall termux? di playstore ada, namun dari github yang saya sudah lupa dimana saya membaca, mereka menyarankan kamu untuk melakukan instalasi dari github release, maupun dari f-droid. Alasannya? pengurus paketnya berbeda, meskipun hampir sama, namun beberapa fitur asli dihilangkan permintaan dari google si pemilik playstore.

Releases · termux/termux-app

Termux | F-Droid - Free and Open Source Android App Repository

Perlu diingat juga bahwa plugin yang ada di Playstore tidak bisa dipakai dengan rilis dari GitHub maupun F-Droid, jadi ya…

Perintah dasar

Sudah diinstal? selamat! sekarang anda bisa menggunakan termux untuk keperluan iseng - iseng. Cukup banyak yang bisa dilakukan, namun sesuai saran dari termux sendiri, baiknya kamu melakukan update paket data pada termux. Sebelum melakukan update kamu juga sebaiknya melakukan pergantian repo dimana paket aplikasi akan diunduh.

  • termux-change-repo untuk mengubah lokasi repo, tentu pilih Asia dong, kita kan di Indonesia.
  • pkg upgrade untuk melakukan cek update dan sekaligus melakukan update.
  • pkg install <nama app> untuk menginstal paket aplikasi
  • pkg remove <nama app> untuk menghapus paket aplikasi
  • apt autoremove untuk menghapus dependensi yang mungkin tidak ikut terhapus ketika menghapus paket aplikasi.
  • termux-reset untuk me reset secara aplikasi, atau bisa juga dengan cara menghapus data pada termux.
  • termux-setup-storage untuk membuat symlink penyimpanan perangkat kita didalam termux, jadi kita bisa copy - paste data kita yang ada di “unduhan” misalnya untuk kita akses di dalam termux.

Khusus apt autoremove memang saya tuliskan karena pkg tidak memiliki perintah ini, dan kadang menjengkelkan saja ada 1 paket aplikasi yang tertinggal dan tidak ikut dihapus.

Perintah lain tentu seperti perintah yang ada pada sistem operasi linux pada umumnya.

Masalah: tidak ada koneksi jaringan setelah menjalankan pkg upgrade

Pada beberapa kasus, seperti perangkat smartphone saya yang bisa dikatakan cupu, setelah berhasil mengupdate semua paket data, saya tidak bisa mengakses internet, tidak bisa melakukan instalasi paket aplikasi, tidak bisa melakukan ping, dan sebagainya.

Saya tidak begitu tahu alasannya, namun ketika saya mencoba untuk mengisolasi masalah ini, saya temukan bahwa paket aplikasi curl dan libcurl yang menyebabkan saya tidak bisa mengakses internet. Solusinya? akhirnya saya menandai curl agar tidak ikut di upgrade dengan menggunakan perintah apt mark hold curl.

Bagi kamu yang sudah terlanjur, silahkan reset termux anda, hehe.

Install proot-distro

Setelah semua lancar, kamu bisa menginstall proot-distro dengan menjalankan pkg install proot-distro yang mana ini akan membantu kamu untuk menjalankan linux di termux. Informasi mengenai proot akan saya tempel dibawah, dan akan saya ambil quote yang ada didalam wikinya:

If you have rooted device and want to have a better experience with using the Linux distributions in Termux, then use chroot. In this case get started with Linux Deploy app for automated distribution installation. Things like shell can be used from Termux of course.

PRoot - Termux Wiki

Jika kamu memiliki root dan ingin merasakan linux seperti native, silahkan menggunakan chroot, namun saya tidak akan membahas ini disini, setidaknya saat ini.

Menggunakan proot-distro

Perintah dasar pada proot-distro sudah dijelaskan pada wiki diatas, namun karena mengetik di smartphone sangatlah tidak nyaman, kamu bisa menggunakan perintah berikut:

  • pd ls untuk menampilkan distro apa saja yang bisa kamu install
  • pd i <nama distro> untuk menginstall distro
  • pd sh <nama distro> untuk login ke distro yang sudah diinstall
  • pd rm <nama distro> untuk menghapus distro yang sudah diinstall

Ketika berhasil login, kamu akan masuk ke dalam sistem distro linux dengan user root. Namun tenang saja karena proot tidak benar - benar memberikan anda akses root, proot menipu distro tersebut agar kamu bisa menggunakannya.

Kekurangan proot

Karena proot bukanlah chroot, cukup banyak kekurangan yang dimiliki, misalnya pada umumnya dengan distro apapun, kamu tidak akan bisa menggunakan docker, appimage, flatpak, snap dan segala hal yang berhubungan dengan system mounting dengan FUSE. Hal ini dikarenakan proot bisa dikatakan hanya melakukan bind mount agar distro mengira berjalan pada environment yang sebeneranya, untuk lebih lengkap kekurangan bisa kamu baca di bawah:

GitHub - termux/proot-distro: An utility for managing installations of the Linux distributions in Termux.

Install distro, dan gunakan!

Distro apa yang paling bagus untuk digunakan? tidak ada, pilih distro yang paling kamu kenali / kuasai, atau gunakan yang ingin kamu coba.

Saya pribadi suka dengan alpine, karena paket aplikasinya sederhana dan bisa langsung diinstall dengan perintah apk add <nama app>. Selain itu, alpine memang dirancang dengan tujuan mengurangi memory footprint pada memory constrained devices.

Apa yang bisa kamu lakukan pada linux di genggaman mu ini? Banyak sebetulnya, karena pada dasarnya kamu memiliki hampir semua akses linux, sama seperti kalian mengantongi perangkat Raspberry Pi (minus GPIO). Hanya saja, perlu kalian ingat bahawa termux berdiri diatas android, sebagai userspace application, yang artinya termux berjalan dengan banyak batasan bisa saja dengan mudah di bunuh oleh OOM android.

Menggunakan logika yang sama, artinya kamu tidak bisa berharap menggunakan kemampuan maksimal hardware dari perangkat androidmu ketika menggunakan proot, hal yang berbeda jika kamu menggunakan chroot (karena kamu diharuskkan untuk mengompile custom kernel untuk linuxmu sendiri).

{{< callout emoji=“⚠️” >}}

proot hanya berjalan pada userspace android sehingga tidak bisa menggunakan kemampuan hardware secara maksimal, jika perangkatmu memiliki OOM yang “galak” maka termux kemungkinan akan sering di “bunuh” oleh android.

{{< /callout >}}

Linux tidak bisa terhubung ke internet

Seharusnya sih tidak ada kendala, namun karena sistem kita berada di atas android, kamu bisa melakukan cek terhadap beberapa poin berikut:

  • Pastikan kamu punya akses internet. Coba buka google pada perangkat androidmu, coba ping ketika didalam termux, siapa tahu kuota kamu habis ketika melakukan instalasi distro.
  • Cek “private dns” yang digunakan di androidmu. Kamu yang ingin menghilangkan iklan dengan menggunakan DoT DNS pada android pasti mengubah pengaturan ini, matikan dan coba lagi.
  • Masuk ke linux distro mu dan ubah /etc/resolv.conf proot menggunakan nameserver 8.8.8.8 untuk seluruh distronya, dan terkadang ISP kita memblokir ini. Kamu yang menggunakan WiFi bisa menambahkan nameserver 192.168.1.1 di baris paling atas. Sesuaikan IP address sesuai dengan pengaturan WiFi mu.

Artikel lainnya menyusul, karena saya kehabisan ide untuk menulis di siang ini.