Jeden praktyczny moduł w Ansible jest moduł pliku. Ten moduł jest odpowiedzialny za wykonywanie takich zadań, jak tworzenie plików i katalogów, usuwanie plików i katalogów, tworzenie miękkich i twardych symbolicznych linków, dodawanie i modyfikowanie uprawnień do plików i katalogów i nie tylko.
Ten przewodnik przeprowadzi Cię przez sposób pracy z modułem pliku Ansible. Zilustrujemy to za pomocą kolekcji przykładów i podręczników.
NOTATKA: Upewnij się, że masz dostęp do swoich zdalnych hostów określonych w pliku inwentaryzacji Ansible.
Jak działa moduł pliku ansible
Ansible.wbudowany.Moduł pliku znajduje się w domyślnej instalacji ansible w ramach Ansible-Core. Ansible zaleca odniesienie do modułu za pomocą „w pełni kwalifikowanej nazwy” zamiast krótkiej nazwy modułu, aby uniknąć konfliktów z modułami podobnych nazwisk.
Moduł pliku zawiera zbiór wcześniej zdefiniowanych parametrów do zarządzania plikami. Używamy tych parametrów do skonfigurowania akcji wykonywanych na zdalnym hoście.
Poniżej są ważne parametry, których możesz użyć:
Sprawdź dokumenty modułu pliku ansible dla innych predefiniowanych parametrów.
Najlepszym sposobem nauki pracy z modułem pliku Ansible jest przykłady.
Moduł pliku ansible: praktyczne przykłady
NOTATKA: Ten przewodnik zakłada, że masz węzeł kontrolny ansible i docelowe hosty dodane do pliku ekwipunku.
Jak utworzyć pusty plik
Aby utworzyć pusty plik za pomocą modułu pliku ansible, ustawiamy stan do dotknięcia, jak pokazano w podręczniku.
---Powyższy podręcznik zawiera podstawową konfigurację Ansible:
Zapisz podręcznik i wykonaj go na zdalnych hostach:
Ansible-Playbook pusty plik.ymlJak tworzyć wiele plików
Ansible umożliwia tworzenie wielu plików w jednym zadaniu. Poniżej znajduje się przykład podręcznika:
---W podręczniku używamy dwóch wpisów Ansible:
Uruchom książkę ansible-playbook, aby utworzyć określone wiele plików:
Ansible-Playbook mnisefile.ymlJak utworzyć plik z treścią
W powyższych przykładach tworzymy puste pliki za pomocą polecenia dotykowego. Aby utworzyć plik z treścią, możemy użyć modułu kopiowania i ustawić parametr treści na zawartość pliku.
Poniżej znajduje się przykład podręcznika:
---Moduły i parametry w powyższym podręczniku to:
Uruchom podręcznik:
Ansible-Playbook withContent.ymlJak utworzyć katalog
Podręcznik używany do utworzenia katalogu za pomocą modułu pliku ansible jest podobny do utworzenia pustego pliku. Jednak, jak pokazano poniżej, ustawiamy stan na „Directory” zamiast „Plik”:
---Jak usunąć plik lub link symboliczny
Usuwanie plików, katalogów lub linków symbolicznych jest bardzo proste; Wszystko, co musimy zrobić, to ustawić stan na nieobecność, jak pokazano w poniższym podręczniku:
---Podręcznik nic nie zrobi, jeśli określony plik nie istnieje.
Jak zmienić zgodę katalogu
Używamy parametrów właściciela, grupy i trybu podręcznika, aby zmienić zgodę katalogu.
Poniższy przykład ustawia określone uprawnienia w katalogu.
---W powyższym przykładzie podręcznika ustawiamy się: true. Jest to konieczne przy ustalaniu uprawnień dla innych użytkowników, z wyjątkiem ansible_user
Za pomocą trybu symbolicznego
Ansible pozwala ustawić uprawnienia w trybie symbolicznym zamiast formatu ośmiorotnego. Poniższy tryb jest równoważny 0777.
---NOTATKA: Ustawienie 0777 w katalogu, takim jak /var /log nie jest najlepszą praktyką i użyliśmy go tutaj tylko do celów ilustracyjnych.
Zmień uprawnienia do katalogu rekurencyjnie
Jeśli chcesz rekurencyjnie zmienić uprawnienia do katalogu, możesz użyć parametru rersurse, jak pokazano w poniższym podręczniku:
---Ustawienie rense: Prawda wpłynie na pliki w określonym katalogu nadrzędnym.
Jak utworzyć symboliczny link
Tworzenie symlink. W takim przypadku ustawiamy stan na link, jak pokazano na przykładzie podręcznika poniżej:
---Jak usunąć symboliczny link
Usunięcie symboli jest podobne do usunięcia zwykłego pliku.
---Jak zmodyfikować czas dostępu
Możesz zmodyfikować czas dostępu i modyfikacji za pomocą parametrów Access_Time i Modyfication_Time.
Przykładowy podręcznik:
- staje się prawdąUstawiamy Access_Time jako bieżący czas za pomocą funkcji teraz.
Możesz także zapewnić czas na parametry Access_Time i Modyfication_Time w formacie (jako ciąg):
YYYYMMMDDHHMM.SSWniosek
Ten przewodnik pomógł ci zrozumieć, jak pracować z modułem pliku Ansible w podręczniku.