Ansible 拷贝文件或目录

写法如下:

[root@localhost ~]$ ansible 192.168.119.134 -m copy -a "src=/etc/passwd dest=/tmp/passwd owner=root group=root mode=0644"    # 拷贝本机文件到远程客户端
[root@localhost ~]$ ansible 192.168.119.134 -m copy -a "src=/etc/ansible dest=/tmp owner=root group=root mode=0755"          # 拷贝本机目录到远程客户端

192.168.119.134 :指定远程客户端
-m copy :指定使用 copy 模块
src=/etc/passwd :指定本机源文件
dest=/tmp/passwd :指定拷贝到远程客户端的路径及文件名
owner=root :指定文件的属主,可选参数
group=root :指定文件的属组,可选参数
mode=0644 :指定文件的权限,可选参数

注意:

1. 拷贝文件时 src=/etc/passwd dest=/tmp/passwd :

    ① 如果远程客户端 /tmp/passwd 文件存在,则会更新成源文件
    ② 如果远程客户端 /tmp/passwd 文件不存在,则会直接拷贝源文件
    ③ 如果远程客户端存在 /tmp/passwd 目录,则会把源文件拷贝到 /tmp/passwd 目录下,最终文件是 /tmp/passwd/passwd

2. 拷贝目录时 src=/etc/ansible dest=/tmp :

    ① 如果远程客户端 /tmp/ansible 目录不存在,则会直接把源目录拷贝成这个目录名
    ② 如果远程客户端 /tmp/ansible 目录存在,则会把源目录拷贝到该目录下,最终目录是 /tmp/ansible/ansible

 

 

 

 

    

posted @ 2019-01-03 11:45  孔雀东南飞  阅读(10363)  评论(0编辑  收藏  举报