Install Debian chroot di Android menggunakan Termux

Install Debian chroot di Android menggunakan Termux

Android memberikan ruang eksplorasi yang luas bagi pengguna yang ingin menjalankan sistem Linux. Dengan sedikit penyesuaian dan bantuan aplikasi seperti Termux, perangkat Android dapat berfungsi layaknya sistem Linux portabel yang cukup powerful. Melalui pendekatan chroot, pengguna dapat menjalankan distribusi Debian secara penuh langsung di dalam Android, tanpa perlu akses root atau modifikasi sistem yang kompleks.

Metode ini memungkinkan Anda mengakses lingkungan Debian dalam direktori terisolasi, lengkap dengan shell interaktif, manajemen paket, bahkan antarmuka desktop seperti XFCE. Hasilnya, perangkat Android dapat digunakan untuk berbagai keperluan produktif, mulai dari belajar Linux, menjalankan script, hingga pengembangan ringan.

Artikel ini akan memandu Anda secara bertahap dalam menginstal Debian chroot di Android menggunakan Termux, beserta konfigurasi BusyBox, penggunaan Termux Widget, dan setup lingkungan desktop. Panduan ini ditujukan untuk pengguna yang memiliki minat dalam eksplorasi sistem Linux di perangkat mobile, baik untuk pembelajaran, eksperimen, maupun kebutuhan kerja teknis di luar perangkat komputer tradisional.

Persyaratan Sistem

Sebelum memulai proses instalasi, pastikan Anda telah memenuhi beberapa syarat dan prasyarat berikut:

  • Perangkat Android yang telah di-root menggunakan Magisk dan module BusyBox Magisk terpasang
  • Akses internet yang stabil
  • Ruang penyimpanan internal kosong minimal 10 GB
  • Aplikasi Termux, Termux X11, dan Termux Widget versi terbaru
  • Magisk Manager dengan modul Busybox yang telah aktif

Catatan: Pastikan semua aplikasi yang digunakan adalah versi terbaru dan stabil untuk menghindari konflik saat proses instalasi berlangsung. Unduh dari sumber resmi atau penyedia APK terpercaya yang menjamin kompatibilitas dengan sistem Termux terbaru.

Langkah 1: Install Termux dan Komponen Pendukung

Langkah awal adalah memasang aplikasi Termux sebagai terminal utama untuk menjalankan perintah. Setelah itu, install juga aplikasi Termux X11 untuk dukungan antarmuka grafis, serta Termux Widget agar Anda dapat menjalankan script tertentu dengan lebih cepat melalui shortcut pada layar utama.

Pastikan semua aplikasi telah terinstal dengan benar. Selanjutnya, buka Termux dan jalankan perintah berikut untuk memberi akses penyimpanan, memperbarui sistem, dan menginstal paket yang dibutuhkan:

termux-setup-storage
pkg update && pkg upgrade -y
pkg install busybox git ncurses-utils pulseaudio root-repo tur-repo tsu termux-api vim virglrenderer-android wget x11-repo -y
pkg install termux-x11-nightly

Langkah 2: Membuat Direktori Debian chroot

Masuk ke shell root Android menggunakan:

su

Buat direktori khusus sebagai lingkungan Debian chroot:

mkdir /data/local/tmp/Debianchroot
cd /data/local/tmp/Debianchroot

Langkah 3: Unduh dan Ekstrak RootFS Debian

Gunakan tautan dari proyek proot-distro di GitHub untuk mengunduh file rootfs Debian terbaru. Dalam contoh ini, kita menggunakan Debian Bookworm untuk arsitektur aarch64:

wget https://github.com/termux/proot-distro/releases/download/v4.17.3/debian-bookworm-aarch64-pd-v4.17.3.tar.xz
tar xpvf debian-bookworm-aarch64-pd-v4.17.3.tar.xz --numeric-owner

Pindahkan konten hasil ekstrak ke direktori saat ini dan buat direktori tambahan:

mv debian-bookworm-aarch64/* .
mkdir sdcard
mkdir dev/shm

Hapus file .tar.xz yang sudah tidak diperlukan:

rm -rf debian-bookworm-aarch64 debian-bookworm-aarch64-pd-v4.17.3.tar.xz

Langkah 4: Menyiapkan Script Startup

script ini bertanggung jawab untuk melakukan mounting berbagai direktori dan masuk ke dalam lingkungan chroot.

Buat script startup:

cd /data/local/tmp
vi debian.sh

Tekan i untuk mulai mengedit, lalu masukkan isi berikut:

#!/bin/sh

# Tentukan jalur direktori root dari sistem Debian chroot
DEBIANPATH="/data/local/tmp/Debianchroot"

# Perbaiki izin setuid pada direktori /data untuk memastikan hak akses root berfungsi
busybox mount -o remount,dev,suid /data

# Kaitkan direktori penting dari sistem Android ke dalam lingkungan chroot
busybox mount --bind /dev $DEBIANPATH/dev
busybox mount --bind /sys $DEBIANPATH/sys
busybox mount --bind /proc $DEBIANPATH/proc
busybox mount -t devpts devpts $DEBIANPATH/dev/pts

# Siapkan /dev/shm untuk aplikasi yang membutuhkan shared memory (misal aplikasi berbasis Electron)
mkdir $DEBIANPATH/dev/shm
busybox mount -t tmpfs -o size=256M tmpfs $DEBIANPATH/dev/shm

# Kaitkan penyimpanan internal (sdcard) ke dalam chroot agar dapat diakses dari sistem Debian
mkdir $DEBIANPATH/sdcard
busybox mount --bind /sdcard $DEBIANPATH/sdcard

# Masuk ke lingkungan Debian chroot sebagai root
busybox chroot $DEBIANPATH /bin/su - root

Simpan dan keluar dengan menekan ESC, lalu ketik :wq! dan tekan Enter.

Selanjutnya, beri izin eksekusi lalu jalankan script:

chmod +x debian.sh
sh debian.sh

Langkah 5: Konfigurasi Jaringan di Dalam Debian chroot

Konfigurasi Jaringan di Dalam Debian chroot

Setelah berhasil masuk ke lingkungan Debian chroot, langkah selanjutnya adalah melakukan konfigurasi jaringan dan pembaruan sistem agar Debian dapat bekerja dengan stabil.

Perbaiki DNS dan host untuk mencegah kegagalan saat menjalankan APT:

echo "nameserver 8.8.8.8" > /etc/resolv.conf
echo "127.0.0.1 localhost" > /etc/hosts

Konfigurasi hak akses jaringan untuk menghindari peringatan:

groupadd -g 3003 aid_inet
groupadd -g 3004 aid_net_raw
groupadd -g 1003 aid_graphics
usermod -g 3003 -G 3003,3004 -a _apt
usermod -G 3003 -a root

Langkah 6: Perbarui Sistem dan Install Paket Pendukung

Jalankan perintah berikut untuk memperbarui:

apt update && apt upgrade -y

Install perangkat lunak penting:

apt install curl git nano net-tools sudo vim wget

Setel zona waktu:

ln -sf /usr/share/zoneinfo/Asia/Jakarta /etc/localtime

Langkah 7: Menambahkan Pengguna Biasa

Buat pengguna biasa::

groupadd storage
groupadd wheel
useradd -m -g users -G wheel,audio,video,storage,aid_inet -s /bin/bash teknotutorial
passwd teknotutorial

Berikan akses sudo:

nano /etc/sudoers

Tambahkan baris berikut di bagian User privilege specification:

teknotutorial ALL=(ALL:ALL) ALL
Menambahkan Pengguna Biasa

Setelah selesai mengedit, tekan Ctrl + X, lalu tekan Y, dan tekan Enter.

Setel juga kata sandi untuk root:

passwd root

Langkah 8: Install Lingkungan Desktop XFCE dan Browser

Masuk sebagai pengguna biasa:

su teknotutorial
cd
Masuk sebagai pengguna biasa

Install desktop environment XFCE:

sudo apt install dbus-x11 xfce4

Install browser Chromium:

sudo apt install chromium

Setelah proses instalasi selesai, keluar dari lingkungan chroot dengan perintah berikut:

exit
exit

Langkah 9: Edit Script untuk memulai Debian chroot

Edit script debian.sh:

vi /data/local/tmp/debian.sh

Ubah baris ini busybox chroot $DEBIANPATH /bin/su - root menjadi:

busybox chroot $DEBIANPATH /bin/su - teknotutorial -c 'export DISPLAY=:0 && export PULSE_SERVER=127.0.0.1 && dbus-launch --exit-with-session startxfce4'

Keluar dari sesi root di Termux:

exit

Langkah 10: Konfigurasi Widget Shortcut

Masuk ke home directory dan buat direktori shortcut:

mkdir .shortcuts
vim .shortcuts/Debian.sh

Isi script berikut:

#!/bin/bash

# Hentikan semua proses lama yang mungkin masih berjalan agar tidak bentrok
killall -9 termux-x11 Xwayland pulseaudio virgl_test_server_android termux-wake-lock

# Luncurkan aplikasi Termux X11
am start --user 0 -n com.termux.x11/com.termux.x11.MainActivity

# Mount direktori sementara agar dapat diakses dari dalam lingkungan Debian chroot
su -c "busybox mount --bind $PREFIX/tmp /data/local/tmp/Debianchroot/tmp"

# Jalankan Termux X11 dengan display :0 secara asynchronous
XDG_RUNTIME_DIR=${TMPDIR} termux-x11 :0 -ac &

# Tunggu beberapa detik agar server X11 siap
sleep 3

# Mulai PulseAudio untuk dukungan suara dengan akses tanpa otentikasi dari localhost
pulseaudio --start --load="module-native-protocol-tcp auth-ip-acl=127.0.0.1 auth-anonymous=1" --exit-idle-time=-1
pacmd load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1 auth-anonymous=1

# Jalankan server VirGL untuk akselerasi grafis 3D di lingkungan Android
virgl_test_server_android &

# Atur hak akses direktori sementara agar dapat digunakan oleh berbagai proses
su -c "chmod -R 1777 /data/data/com.termux/files/usr/tmp"

# Jalankan script chroot untuk masuk ke lingkungan Debian
su -c "sh /data/local/tmp/debian.sh"

Simpan dan jadikan script executable:

chmod +x .shortcuts/Debian.sh

Keluar dari Termux, kemudian kembali ke layar utama Android Anda. Sebelum melanjutkan, pastikan Termux sudah diizinkan untuk menampilkan di atas aplikasi lain. Setelah itu, tekan dan tahan area kosong pada layar utama hingga muncul menu widget. Selanjutnya pilih Termux Widget dari daftar widget yang tersedia, lalu pilih script bernama Debian.sh untuk membuat pintasan eksekusi otomatis ke lingkungan Debian chroot.

Langkah Terakhir: Menghapus Instalasi Debian chroot

Dengan menyelesaikan seluruh langkah install Debian chroot di Android menggunakan Termux, Anda telah membuka potensi baru dalam memanfaatkan ponsel layaknya sistem Linux portabel. Pendekatan ini memungkinkan eksplorasi lebih jauh terhadap lingkungan GNU/Linux, cocok bagi pengguna yang ingin belajar, mengembangkan perangkat lunak, atau melakukan pekerjaan teknis secara mobile. Tutorial ini diharapkan memberikan pemahaman menyeluruh, terutama bagi yang tertarik menjadikan Android sebagai medium produktivitas berbasis Linux.

Jika di kemudian hari Anda ingin menghapus Debian chroot dari sistem Android, prosesnya cukup sederhana. Pastikan terlebih dahulu Anda telah keluar dari lingkungan chroot dan memulai ulang perangkat, lalu jalankan perintah berikut:

su
rm -r /data/local/tmp/Debianchroot
rm -f /data/local/tmp/debian.sh
rm -f .shortcuts/Debian.sh

Perintah di atas akan menghapus direktori sistem Debian yang sebelumnya di-chroot serta script shortcut pada Termux Widget, sehingga sistem akan kembali seperti semula tanpa jejak instalasi chroot.

Apabila Anda memiliki pertanyaan, mengalami kendala teknis, atau ingin berbagi pengalaman dalam menggunakan metode ini, silakan tinggalkan komentar di bawah artikel ini. Anda juga dapat menghubungi kami melalui halaman kontak yang telah disediakan. Setiap umpan balik sangat berharga untuk terus memperbaiki dan memperkaya konten yang disajikan.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *