首页/云/云与容器速查/挂载失败排查(Permission denied / No such file)
本包目录(340 条)

挂载失败排查(Permission denied / No such file)

挂载问题分三类:路径不存在或类型不符、权限不足(uid/SELinux)、底层存储异常(NFS/云盘)。docker inspect 的 Mounts 段先确认最终挂载参数。

云与容器速查云更新于 2026-10-12
No such file宿主源路径不存在;挂文件时先有同路径目录相撞
Permission denied容器用户对宿主目录无权限;SELinux 需 :z/:Z
I/O errorNFS/云盘断连或只读挂载;检查 dmesg 与存储侧
核对参数docker inspect 容器 .Mounts 看 Source/Destination/Mode
验证docker exec 容器 ls -ld 目标路径并尝试写文件

排查命令

排查命令
docker inspect myapp -f '{{json .Mounts}}' | python3 -m json.tool
docker exec myapp sh -c 'id; ls -ld /data; touch /data/.probe && echo ok && rm /data/.probe'
NFS 挂载在宿主能访问不代表容器可用:容器 uid 映射与 squash 选项会让权限表现完全不同。

易错点

  • 宿主用 root 建目录、容器用非 root 跑:写入被拒,日志含糊
  • 挂载覆盖了镜像里的目录内容:原文件『消失』,被误判为镜像坏了

数据来源与参考

  • Docker Docs:Bind mounts(Troubleshooting)
  • Docker Docs:Volumes

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌