chroot是一個(gè)比較有用的命令,它可以構(gòu)造一個(gè)相對(duì)封閉的環(huán)境(sandbox),在這個(gè)封閉系統(tǒng)里運(yùn)行命令而不必?fù)?dān)心會(huì)對(duì)原有系統(tǒng)造成影響。
Linux/Unix系統(tǒng)里的每個(gè)命令或者進(jìn)程,都有一個(gè) 當(dāng)前的運(yùn)行目錄 (current working directory, i.e., root directory), 這個(gè)目錄可以使用 chroot來(lái)改變。
chroot改變的目錄后,在這個(gè)目錄下面運(yùn)行的進(jìn)程無(wú)法不能訪問(wèn) root directory 之外的文件。
下面以一個(gè)例子說(shuō)明。
1. 創(chuàng)建目錄 /home/charles/tmp/jail
這個(gè)目錄將會(huì)作為一個(gè)封閉的測(cè)試環(huán)境。
2.在測(cè)試目錄下創(chuàng)建子目錄:

把 /bin/bash 和 /bin/ls 拷貝到測(cè)試目錄:

3. 查看 ls 用到的共享庫(kù):

把用到的共享庫(kù)拷貝到對(duì)應(yīng)的測(cè)試目錄:

然后再用 ldd對(duì)測(cè)試目錄下的 ls 和 bash確認(rèn)一下:

把落下的幾個(gè)庫(kù)文件拷過(guò)去:

4. 使用 chroot進(jìn)入測(cè)試目錄:
~$ sudo chroot /home/charles/tmp/jail/ /bin/bash
bash-4.3#
:~$ sudo chroot /home/charles/tmp/jail/ /bin/bashbash-4.3# ls
bin lib
bash-4.3# pwd
/
-
Linux
+關(guān)注
關(guān)注
88文章
11772瀏覽量
219144 -
UNIX
+關(guān)注
關(guān)注
0文章
296瀏覽量
43076 -
虛擬機(jī)
+關(guān)注
關(guān)注
1文章
972瀏覽量
30514
發(fā)布評(píng)論請(qǐng)先 登錄
掌握Linux操作系統(tǒng)的虛擬機(jī)定制安裝
在虛擬機(jī)搭建Windows和Unix系統(tǒng)
你會(huì)用VMware虛擬機(jī)安裝Linux系統(tǒng)?
linux虛擬機(jī)的聯(lián)網(wǎng)方法
虛擬機(jī):Linux或Unix系統(tǒng)使用chroot
評(píng)論