ansible 远程目录拷贝
copy模块
远程拷贝文件和目录
格式:
ansible <host> -m copy -a "src=/path/ dest=/path/ <owner=root> <group=root> <mode=0755>"
src :服务端源文件|目录路径
dest :客户端目标文件|目录路径
owner(可选):目标文件所属用户
group(可选):目标文件所属用户组
mode(可选):目标文件权限
[root@localhost ~]# ansible 192.168.127.129 -m copy -a "src=/etc/passwd dest=/tmp/123.txt owner=nobody group=root mode=0600"
192.168.127.129 | SUCCESS => {
"changed": true,
"checksum": "612a2fc0adc9039c26d249dcb55ce973ba40edaa",
"dest": "/tmp/123.txt",
"gid": 0,
"group": "root",
"md5sum": "02115ff2a990c1651504a1495fc41145",
"mode": "0600",
"owner": "nobody",
"size": 909,
"src": "/root/.ansible/tmp/ansible-tmp-1537967679.72-211199974798374/source",
"state": "file",
"uid": 99
}
注意:源目录会放到目标目录下面去,如果目标指定的目录不存在,它会自动创建。如果拷贝的是文件,dest指定的名字和源如果不同,并且它不是已经存在的目录,相当于拷贝过去后又重命名。但相反,如果dest是目标机器上已经存在的目录,则会直接把文件拷贝到该目录下面。
ansible testhost -m copy -a "src=/etc/passwd dest=/tmp/123"
# 这里的/tmp/123和源机器上的/etc/passwd是一致的,但如果目标机器上已经有/tmp/123目录,则会再/tmp/123目录下面建立passwd文件
最后更新于
这有帮助吗?