ansible archive模块

用于创建归档文件的模块。它允许你在目标主机上创建tar、zip、gzip、bzip2、xz等类型的归档文件。解压使用unarchive模块。

  • path:要打包的源目录或文件的路径。(可以是单个文件或目录,也可以是包含多个文件和目录的列表。)
  • dest:要创建的归档文件的路径和名称。
  • format:归档文件的格式,可以是tar、zip、gzip、bzip2或xz。
  • mode:指定归档文件的权限模式。
  • owner:指定归档文件的所有者。
  • group:指定归档文件的所属组。
  • extra_opts:包含任意其他选项的字符串。
  • unique:当设置为 yes 时,如果目标归档文件已存在且内容相同,则不会重新创建归档。这对于避免不必要的工作很有用。默认为 no
  • remove:如果设置为 yes,归档操作后会删除原始文件或目录。默认为 no
  • exclude: 指定要从归档中排除的文件或目录列表。

压缩客户机(管理节点主机的的文件或目录)

压缩客户机(管理节点)的文件或目录只需要添加remote_src=yes即可。

创建tar格式的归档文件

复制代码
ansible 192.168.20.23 -m archive -a 'path=/var/log dest=/opt/var_log_backup.tar format=tar'

这个命令会在远程主机192.168.20.23上将 /var/log 目录打包成一个名为 var_log_backup.tar 的tar归档文件,并存放在 /opt 目录下。

创建gzip压缩的tar归档文件(.tar.gz)

复制代码
ansible 192.168.20.23 -m archive -a 'path=/var/log dest=/opt/var_log_backup.tar.gz format=gz'

这将会把 /var/log 目录压缩成gzip格式的tar文件 var_log_backup.tar.gz

创建bzip2压缩的tar归档文件(.tar.bz2)

复制代码
ansible 192.168.20.23 -m archive -a 'path=/var/log dest=/opt/var_log_backup.tar.bz2 format=bz2'

此命令会创建一个bzip2压缩的tar文件,文件名是 var_log_backup.tar.bz2

设置归档文件的权限和所有者

复制代码
ansible 192.168.20.23 -m archive -a 'path=/etc/yum.repos.d dest=/backup/yum_repos_backup.tar.gz format=gz owner=root group=wheel mode=0644'

此命令不仅创建了一个gzip压缩的tar文件,还设置了归档文件的所有者为 root,所属组为 wheel,以及权限为 0644

排除特定文件或目录

复制代码
ansible 192.168.20.23 -m archive -a 'path=/var/www/html dest=/backups/html_backup.tar.gz format=gz exclude=html_backup.tar.gz exclude=log'

这个命令在创建归档文件时,会排除名为 html_backup.tar.gz 的文件和任何名为 log 的目录。

创建zip压缩的tar归档文件(.tar.zip)

bash 复制代码
ansible jingyu -m archive -a "path=/csdn dest=/csdn.tar.zip format=zip"

压缩jingyu主机 / 跟下的csdn目录 到 / 根下名称叫csdn.tar.zip 压缩格式为format=zip。

创建xz压缩的tar归档文件(.tar.xz)

使用xz格式在客户端需要下载使用python-backports-lzma

bash 复制代码
yum -y install python-backports-lzma

可能会让下载python-backports

bash 复制代码
yum -y install python-backports
bash 复制代码
ansible jingyu -m archive -a "path=/csdn dest=/csdn.tar.xz format=xz"

在jingyu组中 压缩 / 根下的csdn目录 到 / 根下叫csdn.tar.xz 名称 压缩格式为xz.

相关推荐
wdfk_prog6 小时前
[Linux]学习笔记系列 -- [drivers][input]input
linux·笔记·学习
七夜zippoe6 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
盟接之桥6 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
忆~遂愿7 小时前
ops-cv 算子库深度解析:面向视觉任务的硬件优化与数据布局(NCHW/NHWC)策略
java·大数据·linux·人工智能
湘-枫叶情缘7 小时前
1990:种下那棵不落叶的树-第6集 圆明园的对话
linux·系统架构
Fcy6488 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满8 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠8 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Gary Studio8 小时前
rk芯片驱动编写
linux·学习
mango_mangojuice8 小时前
Linux学习笔记(make/Makefile)1.23
java·linux·前端·笔记·学习