博客列表 >Docker 容器中运行 su 出现 system error 问题排查

Docker 容器中运行 su 出现 system error 问题排查

P粉701620330
P粉701620330原创
2022年12月02日 09:38:50458浏览

今日发现在 Docker 容器中操作 su xxx 切换为某个用户时,出现了 system error 的错误,没有除此之外没有任何提示。另外还发先,容器中的 cron 定时任务调度也不执行。

首先查看系统日志文件进行排查,没发现任何错误信息,该条路走不通。

在宿主机中执行 su 命令是没问题的,刚开始怀疑是否是 SELinux 问题导致的,排查宿主机的 SELinux 为 Disabled 状态,也没问题。

后来发现是由于 docker 的运行权限问题。大约在 0.6 版本,privileged 被引入 docker。使用该参数,container 内的 root 拥有真正的 root 权限。否则,container 内的 root 只是外部的一个普通用户权限。privileged 启动的容器,可以看到很多 host 上的设备,并且可以执行 mount。甚至允许你在 docker 容器中启动 docker 容器。

后来通过如下命令运行解决,新增加了 —privileged 参数,帮助各位排个坑。

docker run —name xxx —privileged xxx

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议