Comment créer un répertoire www
à /srv
un système basé sur Debian en utilisant un PlayBook Ansible?
directory
filesystems
ansible
Gaurav Agarwal
la source
la source
state=directory
, tous les sous-répertoires immédiats seront créés s'ils n'existent pas, puisque 1.7 ils seront créés avec les autorisations fournies.all immediate subdirectories
prête à confusion, pourriez-vous définir cela et donner un exemple?Vous pouvez même étendre le module de fichiers et même définir le propriétaire, le groupe et l'autorisation à travers lui. (Réf: documentation du fichier Ansible )
Même, vous pouvez créer les répertoires de manière récursive:
De cette façon, il créera les deux répertoires, s'ils n'existaient pas.
la source
recursive
argument en fait un peu comme l'utilisationmkdir -p
(pour ceux qui recherchent un google ansible mkdir -p ).recurse
paramètre n'aime pasmkdir -p
. Il définit de manière récursive les attributs de fichier spécifiés (s'applique uniquement à state = directory). Sistate=directory
, tous les sous-répertoires immédiats seront créés s'ils n'existent pas, puisque 1.7 ils seront créés avec les autorisations fournies.=
caractères, serait génial de la mettre à jour avec la:
syntaxe avec chaque attribut sur une nouvelle lignechmod -R
. Autrement dit, s'ilpath
existe déjà en tant que répertoire et qu'il contient des fichiers, l'recurse
option appliquera (parfois malheureusement) également ces mêmes autorisations aux fichiers. C'est par conception , pour le meilleur ou pour le pire.vous pouvez créer en utilisant:
Dernière version 2 <
Ancienne version
Référer - http://docs.ansible.com/ansible/file_module.html
la source
Le répertoire peut être créé à l'aide du module de fichiers uniquement, car le répertoire n'est rien d'autre qu'un fichier.
la source
C'est ainsi que vous pouvez également définir les autorisations, le propriétaire et le groupe. Les trois derniers paramètres ne sont pas obligatoires.
la source
Vous pouvez créer un répertoire. en utilisant
Vous pouvez également consulter http://docs.ansible.com/ansible/file_module.html pour plus de détails sur le répertoire et le système de fichiers regaridng.
la source
Pour toutes les réponses supplémentaires ici, il y a beaucoup de situations où vous devez créer plus d'un répertoire, c'est donc une bonne idée d'utiliser des boucles au lieu de créer une tâche distincte pour chaque répertoire.
la source
Il suffit de mettre une condition pour exécuter la tâche pour une distribution spécifique
la source
Vous pouvez utiliser la déclaration
la source
Si vous souhaitez créer un répertoire sous Windows:
la source
Nous avons des modules disponibles pour créer un répertoire, un fichier en ansible
Exemple
la source
Vous pouvez directement exécuter la commande et créer directement en utilisant ansible
OU
la source
Le playbook ci-dessus créera le répertoire www dans le chemin / src.
Avant de courir au-dessus du playbook. Veuillez vous assurer que votre connexion hôte ansible doit être définie,
"localhost ansible_connection = local"
doit être présent dans / etc / ansible / hosts
pour plus d'informations, veuillez me le faire savoir.
la source
créer un répertoire
la source
Utilisez le module de fichiers pour créer un répertoire et obtenir les détails sur le module de fichiers en utilisant la commande "ansible-doc file"
Voici une option "état" qui explique:
la source
vous pouvez utiliser le module "fichier" dans ce cas, il y a tellement d'arguments que vous pouvez passer pour un répertoire nouvellement créé comme le propriétaire, le groupe, l'emplacement, le mode et ainsi de suite .....
veuillez vous référer à ce document pour l'explication détaillée sur le module de fichiers ...
https://docs.ansible.com/ansible/latest/modules/file_module.html#file-module
rappelez-vous que ce module n'est pas seulement destiné à créer le répertoire !!!
la source
Le moyen le plus simple de créer un répertoire dans Ansible.
OU
Vous souhaitez accorder des privilèges sudo à ce répertoire.
la source
Je vois beaucoup d'exemples Playbooks et je voudrais mentionner l'exemple des commandes Adhoc.
$ ansible -i inventaire -m fichier -a "path = / tmp / direcory state = répertoire (au lieu du répertoire, nous pouvons mentionner toucher pour créer des fichiers)
la source
Vous devez utiliser le module de fichiers pour ce cas. Ci-dessous le playbook, vous pouvez utiliser pour votre référence.
la source
Pour vérifier si le répertoire existe, puis exécuter une tâche (par exemple, créer un répertoire), utilisez ce qui suit
la source
Vous voulez le
file
module. Pour créer un répertoire, vous devez spécifier l'optionstate: directory
:la source
ici est plus facile.
- name: create dir command: mkdir -p dir dir/a dir/b
la source