使用 btrfs 来沙箱程序

使用 btrfs 来沙箱程序

首先,在这篇文章中,我使用术语“沙箱”来真正表示仅分离文件系统更改。这些方法都不会: 隔离沙箱中的进程,使其不与其他进程交互;防止突破 chroot;等等。我是唯一的用户,所以我不会试图将不受信任的用户置于沙箱中。而且,我没有运行不受信任的软件。

我一直在 root 上使用覆盖文件系统,并 chroot 到其合并目录,以使 chroot 内的所有内容都像在沙箱中一样。

我可以通过这种方式使用 btrfs,以便不同的 shell 可以位于不同的快照上吗? (即将根快照挂载到 /sandbox-mnt 然后 chroot 到它?)

(我知道,无论这样做,我都会冒并发类型问题的风险。我非常严格地只为沙箱之外不会发生的事情制作沙箱。)

我认为使用播种功能也可能实现这一点?

答案1

与所有 btrfs 子卷一样,快照也有路径。如果安装父子卷,您可以看到它们全部,并与它们交互。因此,您可以轻松chroot创建任意数量的不同快照。

相关内容