Chroot可以将你的应用从计算机将中隔离,通过把它们放在独立的环境中。如果您正在测试可能会更改重要系统文件或不安全的应用程序,使用chroot创建测试环境是一个非常好的选择,不过对于现在的技术来说最好的方式应该是Docker
在此教程中解释了有关使用chroot的基本概念,并提供了启动和运行基本chroot的说明
在查看本教程时你必须具备管理员的权限以及如何使用sudo和其它一些常用基本命令
基本概念
chroot基本上是计算机上的一个特殊目录,它阻止应用程序(如果从该目录内部运行)访问目录外的文件,chroot就像在现有操作系统中安装另一个操作系统
从技术上讲,chroot会暂时将根目录(通常为/)更改为chroot目录(例如/var/chroot)。由于根目录是文件系统层次结构的顶层,因此应用程序无法访问根目录以外目录,使得应用程序与系统的其余部分隔离,这可以防止chroot中的应用程序干扰计算机上其他位置的文件。
chroot外部的软件可以访问chroot内的文件
使用chroots
以下是肯能会使用chroot的情景:隔离不安全和不稳定的应用程序
在64位系统上运行32位应用程序
在生产系统上安装新软件包之前测试它们
在更现代的Ubuntu版本上运行旧版本的应用程序
构建新的包,允许仔细控制已安装的依赖包
创建一个chroot
安装schroot和debootstrap包sudo apt-get install schroot debootstrap -y
为chroot创建一个新目录。在此过程中,将使用目录/var/chroot这个目录作为新的根目录,请在命令行中键入sudo mkdir /var/chroot