我可以在没有管理员权限的情况下用proc创建一个chroot环境吗?

问题描述 投票:0回答:1

我想创建一个chroot'ed、沙箱式的构建环境,在构建应用程序之前,先从Git签出中创建自己的环境,其中一个要求是,在主机上进行git签出和调用构建的开发人员不需要管理员权限。其中一个要求是,进行git检查和调用构建的开发人员不需要主机上的管理员权限。

unshare -r chroot

除了没有proc,这又意味着很多standeard的东西无法工作。我发现用mount创建proc的各种方法都需要sudo权限。

Docker可以做到这一点,但是开发者必须在 "docker "组中,这实际上给了他们不受控制的root权限--那么不如给他们sudo权限。

我已经找到了 "proot",它做了某种模拟来做到这一点。然而,这对性能有一定的影响。

linux sandbox sudo chroot
1个回答
0
投票

你还需要一个能让你执行递归绑定挂载的挂载空间(以及没有子挂载的普通绑定挂载)。pivot_root 以及挂载tmpfs的能力,因此使用 unshare -rm.

使用pid namesapce你也可以挂载procfs的新实例。

© www.soinside.com 2019 - 2024. All rights reserved.