ansible 配置——常用模块(二)

copy模块

  • src ##源文件
  • dest ##目的地文件
  • owner ##指定目的地文件所有人
  • group ##指定用户组
  • mode ##指定目的地文件权限
  • backup=yes ##当受控主机中存在文件时备份原文件
  • conten ##指定文本内容直接在受控主机中生成文件
[mei@server151 ansible]$ ansible server -m copy -a "src=/home/mei/test.sh dest=/mnt/test.sh owner=westos mode=754"
## 传输文件 设置所属用户 设置权限

在这里插入图片描述
当传输的文件同名且不同内容时可备份受控机的原文件__添加backup=yes 参数

[mei@server151 ansible]$ ansible server -m copy -a "src=/home/mei/test.sh dest=/mnt/test.sh owner=westos mode=754 backup=yes"

在这里插入图片描述
输入文本内容 写入到被控主机文件

[mei@server151 ansible]$ ansible server -m copy -a 'content="test_ansible" dest=/mnt/1'
##	该操作会覆盖原文本

在这里插入图片描述

fetch模块

从受控主机自己哦嗯把文件复制到ansible主机,不支持目录

  • src ##受控主机源文件
  • dest ##本机目录
  • falt ##基本名称功能
[mei@server151 ansible]$ ansible server -m fetch -a 'src=/etc/sysconfig/network-scripts/ifcfg-ens3 dest=/home/mei/ansible'

连带目录一起复制过来
在这里插入图片描述
只复制单文件

[mei@server151 ansible]$ ansible server -m fetch -a 'src=/etc/sysconfig/network-scripts/ifcfg-ens3 dest=/home/mei/ansible/ifcfg-ens3 flat=yes'
## flat=yes  ##基本名称功能

在这里插入图片描述

file 模块

参数

  • path ##指定文件名称
  • state ##指定操作状态
    ##touch 建立
    ##absent 删除
    directory 递归
    ##link 建立软链接
    ##hard 建立硬链接
  • mode ##设定权限
  • owner ##设定文件所属用户
  • group ##设定文件组
  • src ##源文件
  • dest ##目标文件
  • recurse=yes ##递归更改
[mei@server151 ansible]$ ansible server -m file -a 'path=/mnt/test/testfile state=touch'
##创建文件
[root@server152 test]# ls
testfile

[mei@server151 ansible]$ ansible server -m file -a 'path=/mnt/test/testdir state=directory'
##创建文件夹
[root@server152 test]# ls
testdir  testfile

[mei@server151 ansible]$ ansible server -m file -a 'path=/mnt/test/testfile mode=777 owner=devops group=westos'
##修改文件权限 所属组 所属用户
[root@server152 test]# ll
总用量 0
drwxr-xr-x. 2 root root 6 823 14:39 testdir
-rw-r--r--. 1 root root 0 823 14:36 testfile
[root@server152 test]# ll
总用量 0
drwxr-xr-x. 2 root   root   6 823 14:39 testdir
-rwxrwxrwx. 1 devops westos 0 823 14:36 testfile

硬链接

[mei@server151 ansible]$ ansible server -m file -a 'src=/mnt/test/file1 dest=/mnt/test/test_one state=hard'

在这里插入图片描述
在这里插入图片描述
软链接

[mei@server151 ansible]$ ansible server -m file -a 'src=/mnt/test/file1 dest=/mnt/test/test_link state=link'

在这里插入图片描述
在这里插入图片描述

archive

  • path 打包目录名称
  • dest 声称打包文件名称
  • ormat 打包格式
  • owner 指定文件所属人 mode 指定文件权限
[mei@server151 ansible]$ ansible server -m archive -a "path=/etc dest=/mnt/test/etc.tar.gz format=gz"
##打包目录到指定文件夹下  gz格式

在这里插入图片描述

[mei@server151 ansible]$ ansible server -m archive -a "path=/etc dest=/mnt/test/etc.tar.bz2 format=bz2 mode=754 owner=devops group=westos"
##打包目录到指定文件夹下  bz2格式 文件所有人devops 所属组 westos 权限 754

在这里插入图片描述

unarchive

  • copy 默认为yes(从ansible主机复制文件到受控主机);设定为no,从受控主机中寻找src源文件
  • remote_src 功能同copy且相反,设定为yes 表示包在受控主机,设定为no表示包在ansible主机
  • src 包路径,可以使用ansible主机也可以使用受控主机
  • dest 受控主机目录
  • mode 解压后文件权限
[mei@server151 ~]$ tar zcf home.tar.gz /home/mei -P
##创建一个压缩包
[mei@server151 ansible]$ ansible server -m unarchive -a "src=/home/mei/home.tar.gz dest=/mnt/test/"
##将压缩包文件解压到被控机上指定目录

在这里插入图片描述

[mei@server151 ansible]$ ansible server -m unarchive -a "src=/home/mei/home.tar.gz dest=/mnt/test/ owner=westos group=westos mode=700"
##将压缩包文件解压到被控机上指定目录 uid为westos gid westos 权限 700

在这里插入图片描述

hostname

修改改主机名称

[mei@server151 ansible]$ ansible server -m hostname -a "name=server_test1"

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值