En praktisk modul i Ansible er filmodulen. Denne modulen er ansvarlig for å utføre oppgaver som å lage filer og kataloger, slette filer og kataloger, lage myke og harde symboliske lenker, legge til og endre fil og katalogtillatelser, og mer.
Denne guiden vil lede deg gjennom hvordan du jobber med Ansible File Module. Vi vil illustrere dette ved hjelp av en samling eksempler og spillbøker.
MERK: Forsikre deg om at du har tilgang til dine eksterne verter som er spesifisert i Ansible's Inventory File.
Hvordan den ansatte filmodulen fungerer
Ansibelen.bygget.Filmodulen er i standard Ansible-installasjon som en del av Ansible-Core. Ansible anbefaler å referere til modulen ved å bruke det "fullt kvalifiserte navnet" i stedet for kort modulnavnet for å unngå konflikter med moduler med lignende navn.
Filmodulen inneholder en samling av forhåndsdefinerte parametere for filhåndtering. Vi bruker disse parametrene for å konfigurere handlingene som er utført på den eksterne verten.
Følgende er viktige parametere du kan bruke:
Sjekk Ansible File Module Docs for andre forhåndsdefinerte parametere.
Den beste måten å lære å jobbe med Ansible -filmodulen er etter eksempler på.
Ansible filmodul: Praktiske eksempler
MERK: Denne guiden forutsetter at du har en Ansible Control Node og målvertene dine lagt til i varelagerfilen din.
Hvordan lage en tom fil
For å opprette en tom fil ved hjelp av Ansible -filmodulen, setter vi staten til å berøre som illustrert i spillboken.
---Ovennevnte spillbok inneholder grunnleggende ansible konfigurasjoner:
Lagre spillboken og kjør den på de eksterne vertene:
Ansible-Playbook Emptyfile.ymlHvordan lage flere filer
Ansible lar deg lage flere filer i en enkelt oppgave. Nedenfor er et eksempel på spillbok:
---I spillboken bruker vi to Ansible -oppføringer:
Kjør Ansible-Playbook for å opprette spesifiserte flere filer:
Ansible-Playbook MultureFiles.ymlHvordan lage en fil med innhold
I eksemplene ovenfor lager vi tomme filer ved hjelp av Touch -kommandoen. For å opprette en fil med innhold, kan vi bruke kopimodulen og angi innholdsparameteren til filens innhold.
Nedenfor er et eksempel på spillbok:
---Modulene og parametrene i ovennevnte spillbok er:
Kjør spillboken:
Ansible-Playbook With Content.ymlHvordan lage en katalog
Playbooken som brukes til å opprette en katalog ved hjelp av Ansible -filmodulen, ligner på å opprette en tom fil. Som vist nedenfor setter vi imidlertid staten til "katalog" i stedet for "fil":
---Hvordan du sletter en fil eller symbolsk lenke
Å fjerne filer, kataloger eller symbolske lenker er veldig grei; Alt vi trenger å gjøre er å sette staten til fraværende, som vist i spillboken nedenfor:
---Playbooken vil ikke gjøre noe hvis den spesifiserte filen ikke eksisterer.
Hvordan endre en katalogs tillatelse
Vi bruker spillbokens eier-, gruppe- og modusparametere for å endre en katalogs tillatelse.
Følgende eksempel vil angi de spesifiserte tillatelsene på katalogen.
---I eksemplet playbook ovenfor satte vi oss: sant. Dette er nødvendig når du setter tillatelser for andre brukere, bortsett fra Ansible_user
Bruke symbolsk modus
Ansible lar deg angi tillatelsene i symbolsk modus i stedet for oktalformat. Modusen nedenfor tilsvarer 0777.
---MERK: Innstilling 0777 til en katalog som /var /log er ikke den beste praksis, og vi har bare brukt den her til illustrasjonsformål.
Endre katalogtillatelser rekursivt
Hvis du vil endre tillatelser på en katalog rekursivt, kan du bruke Recurse -parameteren som vist i spillboken nedenfor:
---Innstilling av recurse: True vil påvirke filene i den spesifiserte overordnet katalog.
Hvordan lage en symbolsk lenke
Å opprette en symlink ved hjelp av Ansible -filmodulen er så enkel som å lage en tom katalog. I dette tilfellet satte vi staten til å koble til som vist i eksemplet spillbok nedenfor:
---Hvordan slette en symbolsk lenke
Å fjerne en symlink ligner på å fjerne en vanlig fil.
---Hvordan endre tilgangstid
Du kan endre tilgangs- og modifiseringstiden ved hjelp.
Eksempel Playbook:
- bli: santVi setter Access_time som den nåværende tiden ved å bruke nå funksjonen.
Du kan også gi tid til Access_Time og Modification_Time -parametere i formatet (som en streng):
Yyyymmddhhmm.SsKonklusjon
Denne guiden har hjulpet deg å forstå hvordan du jobber med Ansible File Module i en spillbok.