Ansible Copy Examples Ansible Copy Module

Modulul de copiere Ansible este unul dintre modulele din modulele de fișiere din Ansible. Modulul de copiere Ansible este utilizat pentru a copia fișierul de pe mașina ansible pe serverul de la distanță. Cu modulul ansible copy puteți face diverse lucruri, haideți să vedem ce putem face cu modulul ansible copy. În această postare pe blog vom vedea exemple de module de copiere ansible și modul de copiere a fișierelor de la maestrul ansible la serverul de la distanță.

Copiați fișierul cu forța da-Modulul de copiere ansible

tasks:- name: Copy file to a remote machine copy: src: ~/devops.txt dest: /tmp

În acest exemplu, fișierul devops.txt din mașina ansible va fi copiat în locația de destinație de pe serverul de la distanță. dar dacă același fișier (cu același nume) există deja în locația de destinație de pe serverul de la distanță, acesta va fi înlocuit cu fișierul din mașina ansible. Nu se va ține cont de faptul că fișierul există sau nu există într-o locație la distanță. Orbește va copia fișierul de pe mașina ansible pe serverul de la distanță.

  • Ansible Fetch module tutorial

în mod implicit, forța este da

tasks:- name: Copy file to a remote machine copy: src: ~/devops.txt dest: /tmp force: yes

Atunci ambele coduri de mai sus funcționează la fel. Menționarea forței: da sau eliminarea forței: da, depinde de dumneavoastră. Pentru o mai bună înțelegere, puteți menționa force: yes.

Copy the file with force no-Ansible Copy Module

tasks:- name: Copy file to a remote machine copy: src: ~/devops.txt dest: /tmp force: no

Aici nu se va forța. dacă fișierul există deja în locația de destinație, nu va înlocui fișierul. Aceasta înseamnă că nu vom forța copierea fișierului de pe mașina ansible pe serverul de la distanță.

Copy a directory from ansible machine to remote destination-Ansible Copy Examples

să presupunem că avem un director numit scripturi. În acest director avem două fișiere numite file1 și file2 și directorul Linux, în directorul Linux avem două fișiere numite file 3 și file 4.

scripts├── file1├── file2└── linux ├── file3 ├── file4

Acum sarcina este că trebuie să trimitem sau să copiem directorul Linux către serverul de la distanță.

tasks:- name: Copy a directory to a remote machine copy: src: /User/scripts/linux dest: /tmp

Cu ajutorul codului de mai sus puteți trimite sau copia directorul Linux de la mașina ansible la o locație a serverului la distanță.

Vezi la sfârșitul src:/user/scripts/linux nu am menționat (/), deci de aceea directorul Linux va fi copiat de la mașina ansible la distanță.

Ieșirea în directorul tmp de la distanță.

├── tmp└── linux ├── file3 ├── file4

Dacă menționați (/) la sfârșitul src, fișierele din directorul Linux (file3 și file4) vor fi copiate la distanță.

vedeți src:/user/scripts/linux/

tasks:- name: Copy files to a remote machine copy: src: /User/scripts/linux/ dest: /tmp

scoaterea în directorul tmp de la distanță

└── tmp ├── file3 ├── file4

Doar fișierele din directorul Linux vor fi copiate la distanță dacă menționați (/) la sfârșitul sursei.

Copy the file with permissions-Ansible Copy Examples

- copy: src: /srd/myfiles/abc.conf dest: /etc/abc.conf owner: abc group: abc mode: 0644

Cu ajutorul codului de mai sus puteți copia fișierul cu diferite permisiuni.

- copy: src: /srd/myfiles/abc.conf dest: /etc/abc.conf owner: abc group: abc mode: "u=rw,g=r,o=r"

Acesta va funcționa ca în același exemplu de mai sus. Aici am menționat permisiunile folosind un mod simbolic echivalent cu 0644. putem folosi orice tip de mod.

Copy Content to Remote server-Ansible Copy Examples

copy:content: "Hello devops"dest: /tmp/devops.txt

Cu ajutorul acestui modul puteți scrie conținut și copia acel conținut pe serverul de la distanță. În cazul în care fișierul nu a existat într-o locație la distanță, acesta va crea acel fișier devops.txt și va scrie acel conținut în devops.txt. Aici devops.txt este un nume de fișier căruia îi puteți da orice nume de fișier. Cu modulul ansible copy, putem crea fișierul cu conținut.

Dacă doriți să aflați mai multe despre ansible copy, puteți consulta documentația ansible.

  • https://docs.ansible.com/ansible/2.3/copy_module.html

.

Lasă un comentariu