ansible-playbook copy模塊(拷貝文件到目標服務器)


 

copy模塊的作用就是拷貝文件,將ansible主機上的文件拷貝到遠程主機中。

 

src參數    :用於指定需要copy的文件或目錄

 

dest參數  :用於指定文件將被拷貝到遠程主機的哪個目錄中,dest為必須參數

 

content參數  :當不使用src指定拷貝的文件時,可以使用content直接指定文件內容,src與content兩個參數必有其一,否則會報錯。

 

force參數  :  當遠程主機的目標路徑中已經存在同名文件,並且與ansible主機中的文件內容不同時,是否強制覆蓋,可選值有yes和no,默認值為yes,表示覆蓋,如果設置為no,則不會執行覆蓋拷貝操作,遠程主機中的文件保持不變。

 

backup參數 :  當遠程主機的目標路徑中已經存在同名文件,並且與ansible主機中的文件內容不同時,是否對遠程主機的文件進行備份,可選值有yes和no,當設置為yes時,會先備份遠程主機中的文件,然后再將ansible主機中的文件拷貝到遠程主機。

 

owner參數 : 指定文件拷貝到遠程主機后的屬主,但是遠程主機上必須有對應的用戶,否則會報錯。

 

group參數 : 指定文件拷貝到遠程主機后的屬組,但是遠程主機上必須有對應的組,否則會報錯。

 

mode參數 : 指定文件拷貝到遠程主機后的權限,如果你想將權限設置為"rw-r--r--",則可以使用mode=0644表示,如果你想要在user對應的權限位上添加執行權限,則可以使用mode=u+x表示

 

 

拷貝單個文件到目標服務器上

[root@Jenkins copymodule]# cat copy.yml
---
- hosts: all
remote_user: root
gather_facts: false
tasks:
- name: "復制主機上的文件到目標服務器上"
copy:
src: "/root/ansible/luyan/copymodule/copytest1.txt"
dest: "/opt/copymodule"
owner: root
group: root
mode: 755

 

 

 

 

拷貝多個文件到目標服務器上

[root@Jenkins copymodule]# cat copyduogewenjian.yml
---
- hosts: all
remote_user: root
gather_facts: false
tasks:
- name: "復制主機上的文件到目標服務器上"
copy:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
owner: root
group: root
mode: 755
with_items:
- {src: "/root/ansible/luyan/copymodule/copytest1.txt", dest: "/opt/copymodule" }
- {src: "/root/ansible/luyan/copymodule/copytest2.txt", dest: "/opt/copymodule" }
- {src: "/root/ansible/luyan/copymodule/copytest3.txt", dest: "/opt/copymodule" }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM