Home >> Linux Command A-E, System Management
chroot
Fungsi Perintah
Menjalankan perintah dengan root direktori yang khusus.
Struktur Perintah
chroot new_directory [command]
Jika [command] tidak ditentukan, maka yang menjadi default adalah /bin/bash.
Contoh Penggunaan
Satu hal yang penting dilakukan, di direktory yang baru, kita harus memasukkan semua library yang dibutuhkan oleh program tersebut.
Contoh berikut, kita akan menjalankan program /bin/pwd dengan root direktori /test.
Banyak yang salah paham kalau perintah chroot ini bisa memindahkan direktori root ke sembarang tempat. Seperti dapat kita lihat dari contoh di bawah.
$mkdir /test; cd /test $chroot /test /bin/pwd chroot: /bin/pwd: No such file or directory
Dalam contoh ini, kita akan menyiapkan tiga program: /bin/pwd, /bin/ls, dan /bin/bash yang dapat dijalankan masing-masing dari direktori root yang baru.
Untuk itu, kita perlu menyiapkan library dari program yang ingin kita jalankan ke direktori baru ini.
$ldd /bin/bash
libtermcap.so.2 => /lib/libtermcap.so.2 (0x40024000)
libdl.so.2 => /lib/libdl.so.2 (0x40029000)
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
$
$mkdir /test/lib; mkdir /test/lib/tls; mkdir /test/bin
$cp /lib/tls/libc.so.6 /test/lib/tls
$cp /lib/ld-linux.so.2 /test/lib
$cp /lib/libtermcap.so.2 /test/lib
$cp /lib/libdl.so.2 /test/lib
$
$cp /bin/pwd /test/bin/
$cp /bin/ls /test/bin/
$cp /bin/bash /test/bin/
$
Setelah ini, kita dapat menjalankan program yang kita inginkan
$pwd /test $chroot /test /bin/bash bash-2.05b# bash-2.05b# ls bin lib bash-2.05b# pwd / bash-2.05b# exit