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

把 /bin/bash 和 /bin/ls 拷貝到測試目錄:

3. 查看 ls 用到的共享庫:

把用到的共享庫拷貝到對應(yīng)的測試目錄:

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

把落下的幾個庫文件拷過去:

4. 使用 chroot進(jìn)入測試目錄:
~$ 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文章
11764瀏覽量
219099 -
UNIX
+關(guān)注
關(guān)注
0文章
296瀏覽量
43057 -
虛擬機(jī)
+關(guān)注
關(guān)注
1文章
972瀏覽量
30493
發(fā)布評論請先 登錄
掌握Linux操作系統(tǒng)的虛擬機(jī)定制安裝
在虛擬機(jī)搭建Windows和Unix系統(tǒng)
你會用VMware虛擬機(jī)安裝Linux系統(tǒng)?
虛擬機(jī):Linux或Unix系統(tǒng)使用chroot
評論