5

我在 RHEL 7.6 上安装了 podman,并且可以使用 sudo 运行正常的 docker 命令

sudo podman run hello-world

有没有办法在不使用 sudo 而不使用用户名空间的情况下运行它(类似于docker在使用常规docker命令时将用户添加到组中)?

我知道当以非 root 用户身份运行时,podman 使用用户名空间。但我无法在机器上启用/设置 suid(LDAP 等)

目前,当以非 root 用户身份运行时,我得到了这个

user namespaces are not enabled in /proc/sys/user/max_user_namespaces
ERRO[0000] cannot re-exec process
4

1 回答 1

9

如果您正在运行 Podman 并且您不是 root 用户并且您没有使用 sudo,即“rootless”,那么您或您的管理员必须在系统上启用用户命名空间才能使其充分工作。只有极少数命令(例如“podman version”)可以在没有设置用户命名空间的情况下在无根环境中工作。

您看到的错误必须由具有管理权限的人处理,该命令sysctl user.max_user_namespaces=15000可以在系统上启用 15,000 个用户名空间。此外,需要在系统上安装 shadows-utils 包,并且 /etc/subuid 和 /etc/subgid 文件必须具有以下条目:

用户名:1​​00000:65536

在每个想要为他们启用用户名空间的每个用户中。

于 2019-05-24T18:58:17.923 回答