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.

相关推荐
耶啵奶膘34 分钟前
uniapp-是否删除
linux·前端·uni-app
_.Switch1 小时前
高级Python自动化运维:容器安全与网络策略的深度解析
运维·网络·python·安全·自动化·devops
2401_850410831 小时前
文件系统和日志管理
linux·运维·服务器
JokerSZ.2 小时前
【基于LSM的ELF文件安全模块设计】参考
运维·网络·安全
XMYX-02 小时前
使用 SSH 蜜罐提升安全性和记录攻击活动
linux·ssh
芯盾时代2 小时前
数字身份发展趋势前瞻:身份韧性与安全
运维·安全·网络安全·密码学·信息与通信
心灵彼岸-诗和远方3 小时前
DevOps业务价值流:架构设计最佳实践
运维·产品经理·devops
一只哒布刘3 小时前
NFS服务器
运维·服务器
苹果醋34 小时前
Java8->Java19的初步探索
java·运维·spring boot·mysql·nginx
二十雨辰4 小时前
[linux]docker基础
linux·运维·docker