设为首页 收藏本站
查看: 1391|回复: 0

[经验分享] ansible之copy模块

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-5-3 09:11:10 | 显示全部楼层 |阅读模式
有时需要把某个文件批量拷贝到其他主机上,那么ansible已经提供相应的模块了。那就是copy。。

copy用法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
[iyunv@ansible ~]# ansible-doc -s copy
less 436
Copyright (C) 1984-2009 Mark Nudelman
less comes with NO WARRANTY, to the extent permitted by law.
For information about the terms of redistribution,
see the file named README in the less distribution.
Homepage: http://www.greenwoodsoftware.com/less
- name: Copies files to remote locations.
  action: copy
      backup                 # Create a backup file including the timestamp information so you can get the original file back if
                               you somehow clobbered it incorrectly.
      content                # When used instead of 'src', sets the contents of a file directly to the specified value. This is
                               for simple values, for anything complex or with formatting please
                               switch to the template module.
      dest=                  # Remote absolute path where the file should be copied to. If src is a directory, this must be a
                               directory too.
      directory_mode         # When doing a recursive copy set the mode for the directories. If this is not set we will use the
                               system defaults. The mode is only set on directories which are
                               newly created, and will not affect those that already existed.
      follow                 # This flag indicates that filesystem links, if they exist, should be followed.
      force                  # the default is `yes', which will replace the remote file when contents are different than the
                               source. If `no', the file will only be transferred if the
                               destination does not exist.
      group                  # name of the group that should own the file/directory, as would be fed to `chown'
      mode                   # mode the file or directory should be. For those used to `/usr/bin/chmod' remember that modes are
                               actually octal numbers (like 0644). Leaving off the leading zero
                               will likely have unexpected results. As of version 1.8, the mode
                               may be specified as a symbolic mode (for example, `u+rwx' or
                               `u=rw,g=r,o=r').
      owner                  # name of the user that should own the file/directory, as would be fed to `chown'
      remote_src             # If False, it will search for src at originating/master machine, if True it will go to the
                               remote/target machine for the src. Default is False. Currently
                               remote_src does not support recursive copying.
      selevel                # level part of the SELinux file context. This is the MLS/MCS attribute, sometimes known as the
                               `range'. `_default' feature works as for `seuser'.
      serole                 # role part of SELinux file context, `_default' feature works as for `seuser'.
      setype                 # type part of SELinux file context, `_default' feature works as for `seuser'.
      seuser                 # user part of SELinux file context. Will default to system policy, if applicable. If set to
                               `_default', it will use the `user' portion of the policy if
                               available
      src                    # Local path to a file to copy to the remote server; can be absolute or relative. If path is a
                               directory, it is copied recursively. In this case, if path ends
                               with "/", only inside contents of that directory are copied to
                               destination. Otherwise, if it does not end with "/", the directory
                               itself with all contents is copied. This behavior is similar to
                               Rsync.
      validate               # The validation command to run before copying into place. The path to the file to validate is
                               passed in via '%s' which must be present as in the example below.
                               The command is passed securely so shell features like expansion
                               and pipes won't work.





copy模块包含如下选项:
   backup:在覆盖之前将原文件备份,备份文件包含时间信息。有两个选项:yes|no
   content:用于替代"src",可以直接设定指定文件的值
    dest:必选项。要将源文件复制到的远程主机的绝对路径,如果源文件是一个目录,那么该路径也必须是个目录
   directory_mode:递归的设定目录的权限,默认为系统默认权限match
   force:如果目标主机包含该文件,但内容不同,如果设置为yes,则强制覆盖,如果为no,则只有当目标主机的目标位置不存在该文件时,才复制。默认为yes
   others:所有的file模块里的选项都可以在这里使用
   src:要复制到远程主机的文件在本地的地址,可以是绝对路径,也可以是相对路径。如果路径是一个目录,它将递归复制。在这种情况下,如果路径使用"/"来结尾,则只复制目录里的内容,如果没有使用"/"来结尾,则包含目录在内的整个内容全部复制,类似于rsync。match
follow        yes/no        当拷贝的文件夹内有link存在的时候,那么拷贝过match去的也会有link
force        yes/no        默认为yes,会覆盖远程的内容不一样的文件(可能文件名一样)。如果是no,就不会拷贝文件,如果远程有这个文件
group        设定一个群组拥有拷贝到远程节点的文件权限
mode  等同于chmod,参数可以为“u+rwx or u=rw,g=r,o=r”
owner        设定一个用户拥有拷贝到远程节点的文件权限


示例需要把httpd.conf文件拷贝到/tmp目录下

QQ截图20160503091049.png

验证下httpd.conf文件是否拷贝到/tmp目录下
QQ截图20160503091056.png

ok,已经拷贝过去了。现就这样吧。泡泡脚去。。。。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-211950-1-1.html 上篇帖子: ansible之cron模块 下篇帖子: ansible之file模块
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表