首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能在码头集装箱上运行dmidecode

不能在码头集装箱上运行dmidecode
EN

Stack Overflow用户
提问于 2019-01-07 03:26:46
回答 1查看 3.9K关注 0票数 1

我试图在我的码头容器中运行命令dmidecode,

代码语言:javascript
复制
docker run --device /dev/mem:/dev/mem -it jin/ubu1604

然而,它声称没有许可。

代码语言:javascript
复制
root@bd1062dfd8ab:/# dmidecode
# dmidecode 3.0
Scanning /dev/mem for entry point.
/dev/mem: Operation not permitted
root@bd1062dfd8ab:/# ls -l /dev
total 0
crw--w---- 1 root tty  136, 0 Jan  7 03:21 console
lrwxrwxrwx 1 root root     11 Jan  7 03:20 core -> /proc/kcore
lrwxrwxrwx 1 root root     13 Jan  7 03:20 fd -> /proc/self/fd
crw-rw-rw- 1 root root   1, 7 Jan  7 03:20 full
crw-r----- 1 root kmem   1, 1 Jan  7 03:20 mem
drwxrwxrwt 2 root root     40 Jan  7 03:20 mqueue
crw-rw-rw- 1 root root   1, 3 Jan  7 03:20 null
lrwxrwxrwx 1 root root      8 Jan  7 03:20 ptmx -> pts/ptmx
drwxr-xr-x 2 root root      0 Jan  7 03:20 pts
crw-rw-rw- 1 root root   1, 8 Jan  7 03:20 random
drwxrwxrwt 2 root root     40 Jan  7 03:20 shm
lrwxrwxrwx 1 root root     15 Jan  7 03:20 stderr -> /proc/self/fd/2
lrwxrwxrwx 1 root root     15 Jan  7 03:20 stdin -> /proc/self/fd/0
lrwxrwxrwx 1 root root     15 Jan  7 03:20 stdout -> /proc/self/fd/1
crw-rw-rw- 1 root root   5, 0 Jan  7 03:20 tty
crw-rw-rw- 1 root root   1, 9 Jan  7 03:20 urandom
crw-rw-rw- 1 root root   1, 5 Jan  7 03:20 zero

这让我很困惑。因为我能够在主机上运行dmidecode -t system (ubuntu14.04),所以很好。

我甚至按照一些建议设置了dmidecode可执行文件的权限。

代码语言:javascript
复制
setcap cap_sys_rawio+ep /usr/sbin/dmidecode

还是不起作用。

有什么想法吗?

更新

根据David Maze的回答,命令应该是

代码语言:javascript
复制
run --device /dev/mem:/dev/mem --cap-add SYS_RAWIO -it my/ubu1604a

只有当您要信任容器中运行的内容时,才会这样做。例如,如果您是在原始操作系统上测试安装过程。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-07 11:40:04

Docker提供了隔离层,Docker的主要目标之一是向容器隐藏主机硬件的详细信息。查询主机硬件底层详细信息的最简单、最合适的方法是从主机上的根shell中完全忽略Docker。

实际的机制是通过限制Linux 功能来实现的。capabilities(7)文档是您需要CAP_SYS_RAWIO访问/dev/mem的文档,因此原则上您可以使用--cap-add SYS_RAWIO启动容器。您可能需要其他功能和/或设备访问才能使其实际工作,因为Docker隐藏了您试图访问的设计目标的细节。

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

https://stackoverflow.com/questions/54068234

复制
相关文章

相似问题

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