## 拷贝文件和目录模块[copy][1]
src不能是空目录,空目录无法拷贝
拷贝过去的目录和文件如不指定属性,默认是`root:root`,权限是`755和644`
### 选项
![](http://om4h63cja.bkt.clouddn.com/17-7-11/75293119.jpg)
### 命令行使用格式
```
ansible host -m copy -a 'src=/path/to/file dest=/path/to/file [owner=name] [group=name] [mode=number]
ansible node2.test.com -m copy -a 'src=/tmp/hiyang dest=/root/ owner=root group=root mode=644'
或者
# ansible 192.168.1.41 -m copy -a "src=/root/.vimrc dest=/tmp/vimrc"
```
### 在playbook中的使用格式
```
---
- name: copy test
hosts: b1.hi.com
tasks:
- name: copy test
copy: src=/tmp/a.txt dest=/tmp/a.txt owner=root group=root mode=644
```
```
---
- name: test
hosts: test
tasks:
- name: copy
copy:
src: /tmp/src.1
dest: /tmp/dest.1
```
[1]:http://docs.ansible.com/ansible/copy_module.html
- 目录
- ansible基础
- ansible简介
- ansible安装和测试
- ansible配置文件
- 常用命令
- yaml在ansible中的用法
- inventory
- 变量与facts
- when语句
- handler模块
- 大杂烩
- ansible模块
- assert 模块
- copy模块
- cron模块
- debug模块
- django_manage模块
- file模块
- filesystem模块
- git模块
- hostname模块
- lineinfile模块
- mount模块
- mysql_user模块
- mysql_db模块
- pip模块
- selinux
- setup模块
- shell 和 command 模块
- stat模块
- supervisorctl
- systemd
- timezone
- unarchive模块
- user模块
- wait_for
- yum和service模块
- 其他模块或者方法
- setup模块
- url模块
- slack 模块
- pause 模块
- 其他
- 报错处理
- playbooks
- 复杂的playbook
- 循环
- roles
- YAML
- jinja2