gpt4 book ai didi

c - 为什么 unshare(CLONE_NEWUSER) 返回错误? (Linux)

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:45:06 36 4
gpt4 key购买 nike

这是我相当简单的代码:

 #define _GNU_SOURCE
#include <sched.h>
#include <errno.h>
#include <stdio.h>

int main(){
int res= unshare(CLONE_NEWUSER);
printf("res:%d\n",res);
perror("error");
return 0;
}

为什么代码总是失败(返回-1)?

我在 Ubuntu 13.04 这是我的内核版本和其他详细信息:

Linux ubuntu 3.10.37-031037-generic #201404141035 SMP Mon Apr 14 14:55:40 UTC 2014 i686 i686 i686 GNU/Linux
  • errno 返回无效参数

这是程序的输出:

res:-1
error: Invalid argument

最佳答案

很可能是因为您的内核未配置为支持 CONFIG_USER_NS

我估计运行命令:

unshare -U

也会在您的机器上产生相同的错误。

您可以使用以下命令验证:

grep CONFIG_USER_NS /boot/config-$(uname -r)

关于c - 为什么 unshare(CLONE_NEWUSER) 返回错误? (Linux),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38103994/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com