Skip to main content

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"