πŸ—ΊοΈ 🏠

Skrip Canggih Chroot di Linux: Setup & Cleanup Otomatis

Ditulis oleh Frijal | Diperbarui: 2 Oktober 2025

Buat kamu yang sering ngoprek sistem Linux, `chroot` itu ibarat punya "penjara" pribadi buat sebuah proses. Kerennya, proses di dalam `chroot` cuma bisa lihat direktori yang kita tentukan, jadi lebih aman dan terisolasi. Tapi, ada satu hal yang kadang bikin repot: proses setup-nya.

Setiap kali mau masuk `chroot`, kita harus `mount` beberapa filesystem virtual penting seperti `/dev`, `/proc`, dan `/sys`. Terus, setelah selesai, harus di-`umount` lagi satu per satu. Lupa satu langkah aja bisa bikin sistem jadi aneh. Nah, biar hidup lebih santai, kita bisa otomatisasi semua itu pakai skrip Bash!

Skrip Otomatis: Setup & Cleanup chroot

Untuk memudahkan, berikut contoh skrip shell sederhana agar tidak perlu mengetik semua perintah mount/umount secara manual.

1. Setup (buat file enter-chroot.sh)

#!/bin/bash
# enter-chroot.sh
# Gunakan: sudo ./enter-chroot.sh /srv/chroot/debian

CHROOT_DIR="$1"
if [ -z "$CHROOT_DIR" ]; then
  echo "Usage: $0 /path/to/chroot"
  exit 1
fi

# Mount filesystem penting
echo "Mounting virtual filesystems..."
mount --bind /dev "$CHROOT_DIR/dev"
mount --bind /dev/pts "$CHROOT_DIR/dev/pts"
mount -t proc /proc "$CHROOT_DIR/proc"
mount -t sysfs /sys "$CHROOT_DIR/sys"

# Copy resolv.conf untuk DNS
echo "Copying DNS configuration..."
cp /etc/resolv.conf "$CHROOT_DIR/etc/"

# Masuk ke chroot
echo "Entering chroot. Ketik 'exit' untuk keluar."
chroot "$CHROOT_DIR" /bin/bash

echo "Keluar dari chroot."

2. Cleanup (buat file exit-chroot.sh)

#!/bin/bash
# exit-chroot.sh
# Gunakan: sudo ./exit-chroot.sh /srv/chroot/debian

CHROOT_DIR="$1"
if [ -z "$CHROOT_DIR" ]; then
  echo "Usage: $0 /path/to/chroot"
  exit 1
fi

echo "Unmounting virtual filesystems..."
umount "$CHROOT_DIR/dev/pts"
umount "$CHROOT_DIR/dev"
umount "$CHROOT_DIR/proc"
umount "$CHROOT_DIR/sys"

echo "Cleanup selesai!"

3. Cara Pakainya Gimana?

Pertama, pastikan kamu memberi izin eksekusi pada kedua file skrip yang baru dibuat:

chmod +x enter-chroot.sh exit-chroot.sh

Sekarang, setiap kali mau masuk ke lingkungan `chroot`, kamu cukup menjalankan:

sudo ./enter-chroot.sh /srv/chroot/debian

Setelah selesai melakukan pekerjaan di dalam `chroot`, cukup ketik `exit` seperti biasa. Dulu kita harus `umount` manual, tapi sekarang, jalankan saja skrip cleanup-nya:

sudo ./exit-chroot.sh /srv/chroot/debian

Dengan cara ini, proses mount dan umount jadi jauh lebih aman, konsisten, dan anti lupa. Selamat mencoba!

×