相关疑难解决方法(0)

使用 unshare 模拟 chroot

我正在尝试为最小的源代码 linux 发行版编写引导程序。

我想在一个类似 chroot 的环境中构建。这应该简化包装。在这一点上,我不关心安全性。引导程序不应需要任何非标准的第三方命令。如果不需要 root 那就太好了。

这就是为什么 fakechroot(1) fakeroot(1) chroot(1) 不是我正在寻找的。

是否可以伪造 / 使用 unshare(1) 和 /bin/sh?

chroot not-root-user namespace unshare

13
推荐指数
2
解决办法
5460
查看次数

是否有 linux vfs 工具允许在用户空间中的不同位置(如 mount --bind)绑定目录?

对于用户进程,我想在其他位置挂载一个目录,但在没有 root 权限的用户空间中挂载。类似 mount --bind /origin /dest 的东西,但带有 vfs 包装器。就像一个用户模式微调的 chroot。

该程序会将系统调用包装到文件中以“替换”所需的路径。可以使用如下命令行调用它:

bindvfs /fake-home:/home ls /home

我相信这已经存在了!:)

linux chroot mount not-root-user

7
推荐指数
1
解决办法
2664
查看次数

Linux下如何实现用户空间chroot的效果(不用root)?

目标是在主机 Linux 系统内的置换(重新定位)发行版(其 / 不得与全局 / 重合)中安装和运行程序。这些程序不适用于使用不同的 / 。

fakechroot 不是一个完整的解决方案,因为它使用库替换而不是在系统调用级别上进行操作(因此不适用于静态链接的二进制文件)。

chroot jails not-root-user virtualization

6
推荐指数
1
解决办法
5090
查看次数

如何在不重启的情况下设置非特权 LXC 容器?

我正在编写一些引导脚本,我无法在没有重新启动的情况下让用户模式 ​​LXC 容器在 vanilla Ubuntu 14.04 上工作。

这就是我所做的。

首先,我下载并安装Ubuntu 服务器 14.04.1 amd64,在新的(VirtualBox 下的虚拟来宾)机器上默认所有内容。

然后我登录,并更新和升级它,如果内核升级,则重新启动。

然后我登录,并发出以下命令:

$ sudo apt-get --yes install lxc
Reading package lists...
Building dependency tree...
Reading state information...
The following extra packages will be installed:
  bridge-utils cgmanager cloud-image-utils debootstrap distro-info
  distro-info-data dnsmasq-base euca2ools genisoimage libaio1
  libboost-system1.54.0 libboost-thread1.54.0 liblxc1 libmnl0
  libnetfilter-conntrack3 librados2 librbd1 libseccomp2 libxslt1.1
  lxc-templates python-distro-info python-lxml python-requestbuilder
  python-setuptools python3-lxc qemu-utils sharutils uidmap
Suggested packages:
  cgmanager-utils shunit2 wodim cdrkit-doc lxctl qemu-user-static
  python-lxml-dbg bsd-mailx mailx
The following …
Run Code Online (Sandbox Code Playgroud)

ubuntu virtualization lxc

6
推荐指数
1
解决办法
1889
查看次数