Immer größere Datenmassen sicher zu speichern ist eine Herausforderung für jede IT-Infrastruktur. Schon mit Gigabit-Ethernet lassen sich aber ... (mehr)

Fester Zeitpunkt

Die folgende Aufgabe ließe sich mit jeder Cron-Implementierung lösen: An allen Werktagen soll ein Job um 3 Uhr nachts eine bestimmte Datei auf ein Backup-Medium kopieren:

& 00 03 * * mon-fri cp ~/Documents/Important.odt /mnt/backup/Important.odt~

Wen man den Editor beendet, speichert Fcron diese Angaben. Zuvor aber prüft das Programm die Eingaben auf korrekte Syntax und verlangt gegebenenfalls Ausbesserungen.

Das »&« am Zeilenanfang teilt Fcron mit, dass der Job eine feste Datums- und Zeitangabe besitzt. Darauf folgen zwei Felder für die Uhrzeit (Minuten, Stunden) und drei für das Datum (Kalendertag, Monat und Wochentag). Die Zeitangabe im obigen Beispiel lautet also: um 03:00 Uhr, jeden Kalendertag des Monats, jeden Monat, von Montag bis Freitag. Am Ende der Zeile steht das auszuführende Kommando.

Beim Anlegen von Cronjobs mit fester Zeitangabe sind alle Datums- und Zeitfelder auszufüllen. Dabei kommt der Asterisk »*« zum Einsatz, wenn es in einem Feld keine Einschränkung gibt, wenn also beispielsweise alle Monate gemeint sind.

Syntax-Feinheiten

Monate und Wochentage lassen sich sowohl als Zahlen ( »0« und »7« bezeichnen beide den Sonntag) oder lesefreundlicher als Abkürzungen der englischen Namen mit drei Buchstaben ( »mon« , »tue« , »wed« , …) angeben. Dabei sind auch mit Kommata getrennte Listen möglich sowie Bereiche ( »mon-fri« ). Regelmäßige Sprünge innerhalb eines Bereichs bezeichnet ein vorangestellter Schrägstrich »/« , und die Tilde »~« markiert Ausnahmen innerhalb eines Bereichs. Die folgenden Beispiele illustrieren diese Schreibweisen.

Dieses Beispiel nervt den Anwender mit einer kleinen Benachrichtigung, und zwar alle 20 Minuten, von 9 bis 16 Uhr vom 10. bis 25. März – ausgenommen ist der 15. März, weil er an diesem Tag Urlaub hat:

& 00,20,40 9-16 10-25~15 mar * echo "Na, schon fertig?"

Ein weiteres Beispiel: Die folgende Zeile führt jeden zweiten Tag um 16 Uhr ein Skript im Homeverzeichnis des Anwenders aus und mailt dessen Ausgabe an den Chef:

&mailto(boss@example.com) * * */2 * *~/script.sh

Die obige Zeile demonstriert mit »mailto()« noch eine weitere Option für Fcron-Jobs. Mehr dazu folgt gegen Ende dieses Artikels.

Ähnliche Artikel

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023