community.general.iso_extract 模块 – 从 ISO 镜像中提取文件
注意
此模块是 community.general 集合 (版本 10.1.0) 的一部分。
如果您使用的是 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list。
要安装它,请使用:ansible-galaxy collection install community.general。您需要其他需求才能使用此模块,请参阅 需求 以了解详情。
要在 playbook 中使用它,请指定:community.general.iso_extract。
概要
- 此模块有两种可能的运行方式。 
- 如果系统上安装了 7zip,此模块会将文件从 ISO 提取到临时目录,并在需要时将文件复制到给定的目标位置。 
- 如果用户具有挂载能力(Linux 上的 CAP_SYS_ADMIN),此模块会将 ISO 镜像挂载到临时位置,并在需要时将文件复制到给定的目标位置。 
需求
以下是执行此模块的主机所需的条件。
- 7z(来自 - 7zip或- p7zip包)
- 或挂载能力(root 权限或 Linux 上的 CAP_SYS_ADMIN 功能) 
参数
| 参数 | 注释 | 
|---|---|
| 要将文件提取到的目标目录。 | |
| 用于从 ISO 提取文件的  如果未提供,它将假定值为  | |
| 要从镜像中提取的文件列表。 提取目录不起作用。 | |
| 如果为  如果为  选项 
 | |
| 要从中提取文件的 ISO 镜像。 | |
| 用于解密 ISO 中文件的密码。 只有在使用 7z 时才会使用。 密码用作 7z 的命令行参数。这是一种**潜在的安全风险**,如果其他人能够在正确的时机列出同一台机器上正在运行的进程,则可能会泄露密码。 | 
属性
| 属性 | 支持 | 描述 | 
|---|---|---|
| 支持:完全支持 | 可以在  | |
| 支持:不支持 | 处于 diff 模式时,将返回有关已更改内容(或可能需要在  | 
备注
注意
- 从 ISO 镜像提取文件时,只考虑文件校验和(内容)。如果 - force=false,则只检查文件是否存在。
示例
- name: Extract kernel and ramdisk from a LiveCD
  community.general.iso_extract:
    image: /tmp/rear-test.iso
    dest: /tmp/virt-rear/
    files:
    - isolinux/kernel
    - isolinux/initrd.cgz
