我阅读了本教程 - https://help.ubuntu.com/community/BasicChroot - 我的理解是,chroot 是更改的过程,/而创建的新受限环境是“监狱”。但是有人说我错了,chroot 和 jails 是两个完全不同的东西。
有人真的可以用简单的术语解释我的区别吗?
Jail 术语来自 FreeBSD 世界,指的是更严格的限制用户访问系统的方式,尽管 chroot 作为一种单独的机制存在于 FreeBSD 中。它类似于(按分离级别排序):
Chroot < 操作系统级虚拟化:(FreeBSD 的 Jail ? Linux OpenVZ)< 半虚拟化:XEN
我想说“jail”是一个通用术语,而“chroot”则不是。chroot 只是限制进程访问的几种可能性之一。不过,我从未在其他情况下听说过“监狱”。您可以使用 AppArmor、SELinux 等来达到类似的结果,但“AppArmor Jail”似乎是一个不常见的术语。另一方面,安全并不是使用 chroot 的唯一原因。尽管效果可能相同,但在某些情况下,当目标不是安全而是针对某个进程的特殊配置时,谈论“chroot监狱”可能没有什么意义。