linux – statx停止提供EPERM需要哪些功能
作者:互联网
我有一个Qt项目,它使用一个插件接口,可以很好地编译我的系统.但是,当在docker中编译同一个项目时,它停止使用Qt 5.10.1,给出了messageError:Undefined接口.在对moc运行进行了一些分析之后,结果发现找不到定义接口的头文件,因为include的文件路径上的statx调用总是返回EPERM.文档甚至没有提到如何生成此错误.
docker run –privileged解决了这个问题,但我想避免过多的权限,所以我只想设置必要的权限.
到目前为止,我试图添加所有这些功能(即使在同一时间)但没有成功:
> CAP_DAC_OVERRIDE
> CAP_DAC_READ_SEARCH
> CAP_FOWNER
> CAP_SETFCAP
我在这里错过了什么吗?
UPDATE
这个pull request正在等待中.
解决方法:
2018-03-06之前
截至目前,Docker使用的default seccomp
whitelist中不包含statx.
您可以使用–security-opt seccomp = / path / to / seccomp / profile.json来指定不同的配置文件(可能是添加了此系统调用的配置文件).
2018-03-06之后
截至2018年3月6日,moby/moby#36417
是merged to master.
它应该包含在未来的夜间构建中,并最终在Docker 18.04版本中.
标签:linux,docker,linux-capabilities 来源: https://codeday.me/bug/20190828/1748317.html