Kopieren von Dateien mit Ansible
Ansible bietet das copy
-Modul, um Dateien vom Kontrollknoten (wo Ansible ausgeführt wird) auf die verwalteten Knoten (die Zielhosts) zu kopieren. Das copy
-Modul unterstützt verschiedene Optionen, um das Verhalten des Dateikopiervorgangs zu steuern.
Grundlegender Dateikopiervorgang
Die grundlegende Syntax für das copy
-Modul lautet:
- copy:
src: <Quelldatei>
dest: <Zielpfad>
Hier gibt src
den Pfad zur Datei auf dem Kontrollknoten an, und dest
gibt den Zielpfad auf dem verwalteten Knoten an.
Beispielsweise können Sie die folgende Aufgabe verwenden, um eine Datei namens example.txt
vom Kontrollknoten in das Verzeichnis /tmp
auf dem verwalteten Knoten zu kopieren:
- copy:
src: example.txt
dest: /tmp/example.txt
Kopieren mit Berechtigungen
Standardmäßig behält das copy
-Modul die Dateiberechtigungen der Quelldatei bei. Sie können die Berechtigungen jedoch auch explizit mit dem Parameter mode
festlegen:
- copy:
src: example.txt
dest: /tmp/example.txt
mode: "0644"
In diesem Beispiel werden die Berechtigungen der kopierten Datei auf rw-r--r--
(644 im Oktalsystem) festgelegt.
Sie können auch die symbolische Notation verwenden, um die Berechtigungen festzulegen:
- copy:
src: example.txt
dest: /tmp/example.txt
mode: u=rw,g=r,o=r
Dadurch werden die Berechtigungen auf rw-r--r--
festgelegt.
Kopieren mit Besitzer und Gruppe
Um den Besitzer und die Gruppe der kopierten Datei festzulegen, können Sie die Parameter owner
und group
verwenden:
- copy:
src: example.txt
dest: /tmp/example.txt
owner: myuser
group: mygroup
Dadurch wird der Besitzer der kopierten Datei auf myuser
und die Gruppe auf mygroup
festgelegt.
Indem Sie verstehen, wie das copy
-Modul in Ansible verwendet wird, können Sie sicherstellen, dass Dateien mit den entsprechenden Berechtigungen, Besitzer und Gruppe auf die Zielhosts kopiert werden. Dies ist von entscheidender Bedeutung, wenn Sie mit sensiblen Dateien arbeiten oder sicherstellen müssen, dass die kopierten Dateien die richtigen Zugriffsrechte haben.