首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用fakeroot生成奇点时出现无效参数错误

使用fakeroot生成奇点时出现无效参数错误
EN

Stack Overflow用户
提问于 2020-10-21 23:00:41
回答 1查看 737关注 0票数 0

我在一个没有sudo权限的系统上遇到了一些奇点问题。奇点是这个系统上的一个模块,这样其他用户就可以使用它。我是第一个尝试使用它的用户。我正在尝试使用--fakeroot (-f)来构建一个非常简单的容器。

代码语言:javascript
复制
$ module load singularity

$ singularity --version
singularity version 3.6.4


$ cat t.def
Bootstrap: library
From: ubuntu:18.04
Stage: build

$ singularity build -f t.sif t.def
ERROR  : Failed to create container process: Invalid argument

$ singularity -d build -f t.sif t.def
DEBUG   [U=1013,P=8140]    persistentPreRun()            Singularity version: 3.6.4
DEBUG   [U=1013,P=8140]    persistentPreRun()            Parsing configuration file /opt/singularity/3.6.4//etc/singularity/singularity.conf
DEBUG   [U=1013,P=8140]    handleConfDir()               /home/Thomas.Robinson/.singularity already exists. Not creating.
DEBUG   [U=1013,P=8140]    init()                        Use starter binary /opt/singularity/3.6.4/libexec/singularity/bin/starter-suid
VERBOSE [U=0,P=8140]       print()                       Set messagelevel to: 5
VERBOSE [U=0,P=8140]       init()                        Starter initialization
DEBUG   [U=0,P=8140]       get_pipe_exec_fd()            PIPE_EXEC_FD value: 8
VERBOSE [U=0,P=8140]       is_suid()                     Check if we are running as setuid
VERBOSE [U=0,P=8140]       priv_drop()                   Drop root privileges
DEBUG   [U=1013,P=8140]    init()                        Read engine configuration
DEBUG   [U=1013,P=8140]    init()                        Wait completion of stage1
VERBOSE [U=1013,P=8150]    priv_drop()                   Drop root privileges permanently
DEBUG   [U=1013,P=8150]    set_parent_death_signal()     Set parent death signal to 9
VERBOSE [U=1013,P=8150]    init()                        Spawn stage 1
DEBUG   [U=1013,P=8150]    startup()                     fakeroot runtime engine selected
VERBOSE [U=1013,P=8150]    startup()                     Execute stage 1
DEBUG   [U=1013,P=8150]    StageOne()                    Entering stage 1
VERBOSE [U=1013,P=8140]    wait_child()                  stage 1 exited with status 0
DEBUG   [U=1013,P=8140]    cleanup_fd()                  Close file descriptor 4
DEBUG   [U=1013,P=8140]    cleanup_fd()                  Close file descriptor 5
DEBUG   [U=1013,P=8140]    cleanup_fd()                  Close file descriptor 6
DEBUG   [U=1013,P=8140]    init()                        Set child signal mask
DEBUG   [U=1013,P=8140]    init()                        Create socketpair for master communication channel
DEBUG   [U=1013,P=8140]    init()                        Create RPC socketpair for communication between stage 2 and RPC server
VERBOSE [U=1013,P=8140]    user_namespace_init()         Create user namespace
VERBOSE [U=1013,P=8140]    pid_namespace_init()          Create pid namespace
ERROR   [U=1013,P=8140]    init()                        Failed to create container process: Invalid argument

调试版本不提供有关无效参数的任何信息。我试图删除其中一个文件,但它只是告诉我缺少一个参数。是奇点安装、我的.def文件有问题,还是我做了什么完全错误的事情?

谢谢你的帮助。

EN

回答 1

Stack Overflow用户

发布于 2020-10-24 16:26:30

你能检查一下系统enable unprivileged user namespace creation’吗?默认情况下未启用。

文档:https://sylabs.io/guides/3.6/admin-guide/user_namespace.html#user-namespace-requirements

在我的环境CentOS 7.4中,启用了:

代码语言:javascript
复制
sudo sh -c 'echo user.max_user_namespaces=15000 \
    >/etc/sysctl.d/90-max_net_namespaces.conf'
sudo sysctl -p /etc/sysctl.d /etc/sysctl.d/90-max_net_namespaces.conf

同样的问题在:https://github.com/hpcng/singularity/issues/5585

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64466390

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档