在 Podman 中,:ro:Z卷挂载的选项,用于控制挂载行为。

:ro 的含义

  • read-only 的缩写,表示只读挂载
  • 容器内对该目录只有读权限,无法修改
  • 是可选的,不写默认为 rw(读写)

:Z 的含义

  • SELinux 上下文标签选项
  • 告诉 Podman 自动给挂载的目录打上合适的 SELinux 标签,让容器能访问
  • 主要用于启用 SELinux 的系统(如 RHEL、CentOS、Fedora)
  • 如果不加 :Z,SELinux 可能会阻止容器访问宿主机目录

组合使用示例

podman run -v /host/path:/container/path:ro,Z

必须写吗?

  • 都不是必须的
  • 如果不需要只读,可以省略 :ro
  • 如果 SELinux 未启用或不需要特殊标签,可以省略 :Z

必须大写吗?

  • :ro 必须小写(read-only 的缩写)
  • :Z 必须大写(Z 是特定选项,大小写敏感)
  • 另外还有 :z(小写)表示共享标签,允许多个容器共享同一个挂载

选项对照

选项含义大小写
:ro只读小写
:rw读写(默认)小写
:Z私有 SELinux 标签大写
:z共享 SELinux 标签小写

何时需要 :Z:z

  • :Z:该挂载只被这一个容器使用(私有)
  • :z:该挂载可能被多个容器共享

如果你的系统没有启用 SELinux(可以用 getenforce 检查),这些 :Z/:z 选项可以省略。

标签: none

添加新评论