Wie erstellen Sie ein Verzeichnis www
an /srv
auf einem Debian-basiertes System ein ansible Textbuch mit?
directory
filesystems
ansible
Gaurav Agarwal
quelle
quelle
state=directory
, werden alle unmittelbaren Unterverzeichnisse erstellt, wenn sie nicht vorhanden sind, da 1.7 sie mit den angegebenen Berechtigungen erstellt werden.all immediate subdirectories
ist verwirrend, könnten Sie das definieren und ein Beispiel geben?Sie können das Dateimodul sogar erweitern und sogar den Eigentümer, die Gruppe und die Berechtigung festlegen. (Ref: Ansible Dateidokumentation )
Sie können die Verzeichnisse auch rekursiv erstellen:
Auf diese Weise werden beide Verzeichnisse erstellt, sofern sie nicht vorhanden waren.
quelle
recursive
Argument ähnelt der Verwendungmkdir -p
(für diejenigen, die ansible mkdir -p googeln ).recurse
Parameter mag nichtmkdir -p
. Die angegebenen Dateiattribute werden rekursiv festgelegt (gilt nur für state = directory). Wennstate=directory
, werden alle unmittelbaren Unterverzeichnisse erstellt, wenn sie nicht vorhanden sind, da 1.7 sie mit den angegebenen Berechtigungen erstellt werden.=
Zeichen, wäre großartig, um sie mit der:
Syntax mit jedem Attribut in einer neuen Zeile zu aktualisierenchmod -R
. Das heißt, wenn espath
bereits als Verzeichnis vorhanden ist und Dateien darin enthalten sind,recurse
wendet die Option (manchmal leider) dieselben Berechtigungen auch auf die Dateien an. Dies ist beabsichtigt , zum Guten oder Schlechten.Sie können erstellen mit:
Neueste Version 2 <
Ältere Version
Siehe - http://docs.ansible.com/ansible/file_module.html
quelle
Das Verzeichnis kann nur mit dem Dateimodul erstellt werden, da das Verzeichnis nichts anderes als eine Datei ist.
quelle
Auf diese Weise können Sie auch die Berechtigungen, den Eigentümer und die Gruppe festlegen. Die letzten drei Parameter sind nicht obligatorisch.
quelle
Sie können ein Verzeichnis erstellen. mit
Weitere Informationen zum Verzeichnis und zum Dateisystem finden Sie auch unter http://docs.ansible.com/ansible/file_module.html .
quelle
Zusätzlich zu allen Antworten gibt es viele Situationen, in denen Sie mehr als ein Verzeichnis erstellen müssen. Daher empfiehlt es sich, Schleifen zu verwenden, anstatt für jedes Verzeichnis eine eigene Aufgabe zu erstellen.
quelle
Sie müssen nur eine Bedingung stellen, um die Aufgabe für eine bestimmte Verteilung auszuführen
quelle
Sie können die Anweisung verwenden
quelle
Wenn Sie ein Verzeichnis in Windows erstellen möchten:
quelle
Wir haben Module zur Verfügung, um Verzeichnis, Datei in ansible zu erstellen
Beispiel
quelle
Sie können den Befehl direkt ausführen und direkt mit ansible erstellen
ODER
quelle
Über dem Playbook wird das Verzeichnis www im Pfad / src erstellt.
Bevor Sie über dem Playbook laufen. Bitte stellen Sie sicher, dass Ihre ansible Host-Verbindung eingestellt ist.
"localhost ansible_connection = local"
sollte in / etc / ansible / hosts vorhanden sein
Für weitere Informationen lassen Sie es mich bitte wissen.
quelle
Verzeichnis erstellen
quelle
Verwenden Sie das Dateimodul, um ein Verzeichnis zu erstellen und die Details zum Dateimodul mit dem Befehl "ansible-doc file" abzurufen.
Hier ist eine Option "Zustand", die erklärt:
quelle
In diesem Fall können Sie das Modul "Datei" verwenden. Es gibt so viele Argumente, die Sie für ein neu erstelltes Verzeichnis wie Eigentümer, Gruppe, Speicherort, Modus usw. übergeben können.
In diesem Dokument finden Sie ausführliche Erläuterungen zum Dateimodul ...
https://docs.ansible.com/ansible/latest/modules/file_module.html#file-module
Denken Sie daran, dieses Modul dient nicht nur zum Erstellen des Verzeichnisses !!!
quelle
Einfachste Möglichkeit , ein Verzeichnis in Ansible zu erstellen.
ODER
Sie möchten diesem Verzeichnis Sudo-Berechtigungen erteilen .
quelle
Ich sehe viele Beispiele für Playbooks und möchte das Beispiel für Adhoc-Befehle erwähnen.
$ ansible -i Inventar -m Datei -a "Pfad = / tmp / Verzeichnisstatus = Verzeichnis (anstelle des Verzeichnisses können wir touch zum Erstellen von Dateien erwähnen)
quelle
Für diesen Fall müssen Sie das Dateimodul verwenden. Unterhalb des Spielbuchs können Sie als Referenz verwenden.
quelle
Gehen Sie wie folgt vor, um zu überprüfen, ob ein Verzeichnis vorhanden ist, und führen Sie dann eine Aufgabe aus (z. B. Verzeichnis erstellen)
quelle
Sie möchten das
file
Modul. Um ein Verzeichnis zu erstellen, müssen Sie die folgende Option angebenstate: directory
:quelle
Hier ist der Weg einfacher.
- name: create dir command: mkdir -p dir dir/a dir/b
quelle