10_Transfert_files
Transférer un fichier vers un hôte distant
Pour copier un fichier depuis votre machine de contrôle vers un ou plusieurs hôtes distants, utilisez le module ansible.builtin.copy :
ansible [groupe] -m ansible.builtin.copy -a "src=[chemin] dest=[chemin]"
Exemple :
ansible web -m ansible.builtin.copy -a "src=/home/admin/index.html dest=/var/www/html/index.html"
Explications :
- [groupe] : groupe d’hôtes défini dans l’inventaire (
web,linux,all, etc.) - -m ansible.builtin.copy : module de copie intégré à Ansible
- src= : chemin du fichier local (machine de contrôle)
- dest= : chemin de destination sur l’hôte distant
- fonctionne via SSH (Linux) ou WinRM (Windows)
Le module copy permet également :
- de définir les permissions (
mode=) - de définir le propriétaire (
owner=) - de définir le groupe (
group=) - de créer le fichier s’il n’existe pas
Exemple avec permissions :
ansible all -m ansible.builtin.copy -a "src=script.sh dest=/usr/local/bin/script.sh mode=0755"