lxc-execute返回“执行失败...。”

时间:2020-05-18 18:05:19

标签: lxc

我正在创建一个在安全,隔离的环境中运行脚本的系统。我想为环境使用无特权的LXC,并且可以使容器以无特权的用户身份运行,并重新映射ID,这没有问题。但是,当尝试将容器的根文件系统挂载到/opt/lxc/node/rootfs之类的位置时,lxc-execute仅返回Failed to exec "*cmd*",其中 cmd 是我所使用的任何命令或脚本正在尝试运行。即使我确保脚本位于/opt/lxc/node/rootfs内并且由非特权用户拥有,也会发生这种情况。

设置注意事项:

/opt/lxc/node/rootfs由非特权用户拥有。 非特权容器将其根用户映射到非特权用户。 我正在尝试使用以下命令运行脚本: lxc-execute -n unpriv-node-1 -f /path/to/lxc.conf -- /path/to/script。当我未指定任何lxc.rootfslxc.mount参数时,所有这些都有效。

这是我当前的lxc.conf:

# Config file for node using lxc-3.0.3
lxc.uts.name = test-node
lxc.ephemeral = 1

# Network Interface
lxc.net.0.type = veth
lxc.net.0.name = eth0
lxc.net.0.link = lxcbr0
lxc.net.0.hwaddr = 02:00:01:03:05:07
lxc.net.0.ipv4.address = 10.10.0.2
lxc.net.0.flags = up

# Console/TTY
lxc.console.path = none
lxc.tty.max = 1
lxc.pty.max = 1

# Id Mapping
lxc.idmap = u 0 101 1
lxc.idmap = g 0 1001 1
lxc.idmap = u 1 1000000 65535
lxc.idmap = g 1 1000000 65535

# Filesystem
lxc.rootfs.path = dir:/opt/lxc/node/rootfs
lxc.rootfs.mount = /opt/lxc/node/rootfs
lxc.mount.auto = proc:mixed sys:ro cgroup:mixed
lxc.mount.entry = /home/node root none bind,create=dir 0 0
lxc.mount.entry = /bin bin none bind,create=dir 0 0
lxc.mount.entry = /etc etc none bind,create=dir 0 0

lxc.apparmor.profile = unconfined

任何帮助/建议/指针都将不胜感激,因为搜寻互联网只会使我到这一点。

0 个答案:

没有答案