Dateien editieren

Der Salt-Master übernimmt die Kontrolle über Dateien auf den Minion

Zahlreiche State-Module ermöglichen das Kopieren, Ändern, Anlegen und Löschen von Dateien auf den Minion.

Beispiel Message of the day

/srv/salt/init/motd.sls
#
# Disable Ubuntu Ads
#
/etc/update-motd.d/80-livepatch:
  file.managed:
    - mode: 0644

/etc/update-motd.d/50-motd-news:
  file.managed:
    - mode: 0644

#
# Add a new section to the motd
#
/etc/update-motd.d/96-salt:
  file.managed:
    - contents: |
        #!/bin/sh
        echo "##########################################"
        echo ""
        echo " This system is managed by Salt"
        echo " Files might be overwritten at any time"
        echo ""
        echo "##########################################"
    - mode: 0755

Achten Sie auf die sechsfache Einrückung des Text-Blockes. Bei einer nur sechsfachen Einrückung würden die Kommentarzeichen als Yaml-Kommentare gewertet, was zu einem Syntaxfehler führt.

Trockenübung

/srv/salt/file-examples.sls
#
# Just create and change a file
#
create:
  file.managed:
    - name: /tmp/file1.txt
    - contents: This file is managed by salt

append:
  file.append:
    - name: /tmp/file1.txt
    - text: This is the second line of the file

insert:
  file.line:
    - name: /tmp/file1.txt
    - contents: >- 
        This is line: #0 
        It's just a single line with special characters
    - mode: ensure
    - before: ^This file is managed by salt
    
copy:
  file.managed:
    - name: /tmp/file-examples.txt
    - source: salt://file-examples.sls
    - mode: 0644

Beachten Sie die Syntax content: >- Was Sie in Yaml über mehrere Zeilen eingeben, wird am Ziel in eine Zeile ohne Umbruch geschrieben. Achten Sie auf die sechsfache Einrückung.

Dateien, die Sie vom Master auf die Minions kopieren möchten, müssen sich innerhalb von file_roots i.d.R. /srv/salt befinden und werden relativ zu diesem Ordner angegeben.

Last updated