ubuntu - 在容器中绑定挂载 /proc 或 /dev 导致操作不允许错误
问题描述
我正在尝试将挂载 /proc 或 /dev 从主机绑定到 ubuntu 16.04 上的 linux 容器,但出现不允许操作错误。
我使用runc作为我的容器运行时,这里是 runc config.json 中的挂载部分。
{
"destination": "/test-proc",
"options": [
"rbind",
"ro"
],
"source": "/proc",
"type": "bind"
},
我同时打开了 pid 命名空间、用户命名空间和挂载命名空间。
这是 strace 输出:
22435 安装(“/proc”,“/sompath/test-proc”,0xc42001be56,MS_RDONLY|MS_BIND|MS_REC,NULL)= 0
22435 mount("/proc", "/somepath/test-proc", 0xc42001be66, MS_RDONLY|MS_REMOUNT|MS_BIND|MS_REC, NULL) = -1 EPERM (不允许操作)
此问题仅发生在 Ubuntu 上,而不会发生在其他 linux 发行版上,例如 Alinux 或 Raspbian。
有谁知道可能导致这种情况的原因是什么?
解决方案
推荐阅读
- python - 如何将列表中的元素合并到 Python 3 中的另一个列表中?
- java - 为什么今天有人会使用 Java 命令行选项 -Xrs?
- css - CSS伪元素的动画不起作用
- .htaccess - 如何重定向网址
- ruby-on-rails-5 - 如何使用自定义版本表而不是版本表?
- spring-boot - 故障转移附加程序不适用于 log4j2 版本 2.7
- android - Pjsip 2.7 为目标“../bin/pjmedia-test-arm-unknown-linux-androideabi”的配方构建目标 arm64-v8a 错误失败
- database - 为什么我们连接数据库时必须选择数据库?
- gantt-chart - 如何打印 AnyGantt 中的所有任务
- reporting-services - NaN 错误报告生成器 3.0