Das Linux cron
System ist eine bewährte und bewährte Technologie. Es ist jedoch nicht immer das richtige Werkzeug für die Systemautomatisierung. Es gibt einige andere Open-Source-Projekte, die entweder in Verbindung mit verwendet werden können cron
oder statt cron
.
Linux auf Kommando
Cron
ist für eine langfristige Wiederholung gedacht. Sie planen einen Job, der von nun an in regelmäßigen Abständen ausgeführt wird, bis der Computer außer Betrieb genommen wird. Manchmal möchten Sie nur einen einmaligen Befehl so planen, dass er zu einem Zeitpunkt ausgeführt wird, an dem Sie sich nicht an Ihrem Computer befinden. Dazu können Sie die at
Befehl.
Die Syntax von at
ist viel einfacher und flexibler als die cron
Syntax, und es hat sowohl eine interaktive als auch eine nicht-interaktive Methode für die Planung (Sie könnten also at
eine erstellen at
Job, wenn du es wirklich wolltest.)
$ echo "rsync -av /home/tux/ [email protected]:/home/tux/" | at 1:30 AM
Es fühlt sich natürlich an, ist einfach zu bedienen und Sie müssen keine alten Jobs aufräumen, da sie nach der Ausführung völlig vergessen sind.
Lesen Sie mehr über den Befehl at, um loszulegen.
Systemd
Neben der Verwaltung von Prozessen auf Ihrem Computer, systemd
kann Ihnen auch bei der Planung helfen. Wie traditionell cron
Arbeitsplätze, systemd
Timer können Ereignisse wie Shell-Skripte und -Befehle in bestimmten Zeitintervallen auslösen. Dies kann einmal täglich an einem bestimmten Tag des Monats sein (und dann vielleicht nur, wenn es beispielsweise ein Montag ist) oder alle 15 Minuten während der Geschäftszeiten von 09:00 bis 17:00 Uhr.
Timer können auch einige Dinge tun, die cron
Arbeitsplätze können nicht.
Zum Beispiel kann ein Timer ein Skript oder Programm auslösen, um eine bestimmte Zeitdauer auszuführen nach ein Ereignis, wie Boot, Startup, Abschluss einer vorherigen Task oder sogar der vorherige Abschluss der vom Timer selbst aufgerufenen Service-Unit!
Wenn Ihr System läuft systemd
, dann verwendest du technisch systemd
Timer schon. Standardzeitgeber führen untergeordnete Aufgaben wie das Rotieren von Protokolldateien, das Aktualisieren der mlocate-Datenbank, das Verwalten der DNF-Datenbank usw. aus. Eigene zu erstellen ist einfach, wie David Both in seinem Artikel Use systemd timers than cronjobs demonstriert.
Anacron
Cron
ist darauf spezialisiert, einen Befehl zu einer bestimmten Zeit auszuführen. Dies funktioniert gut für einen Server, der nie in den Ruhezustand versetzt oder ausgeschaltet wird. Dennoch ist es bei Laptops und Desktop-Workstations ziemlich üblich, den Computer von Zeit zu Zeit absichtlich oder geistesabwesend auszuschalten. Wenn der Computer nicht eingeschaltet ist, cron
wird nicht ausgeführt, sodass wichtige Jobs (wie das Sichern von Daten) übersprungen werden.
Die anacron
Das System soll sicherstellen, dass Jobs regelmäßig und nicht nach einem Zeitplan ausgeführt werden. Das bedeutet, dass Sie einen Computer mehrere Tage lang ausgeschaltet lassen und trotzdem darauf zählen können anacron
um wichtige Aufgaben auszuführen, wenn Sie es erneut starten. Anacron
arbeitet zusammen mit cron
, es ist also keine strikte Alternative dazu, aber es ist eine sinnvolle alternative Möglichkeit zum Planen von Aufgaben. So mancher Systemadministrator hat a . konfiguriert cron
Job, um spät in der Nacht Daten auf dem Computer eines Remote-Mitarbeiters zu sichern, nur um festzustellen, dass der Job in den letzten sechs Monaten nur einmal ausgeführt wurde. Anacron
sorgt dafür, dass wichtige Jobs stattfinden irgendwann wenn sie können, anstatt noch nie wann sie geplant waren.
Lesen Sie mehr über die Verwendung von Anacron für eine bessere Crontab.
Automatisierung
Computer und Technologie sollen das Leben verbessern und die Arbeit erleichtern. Linux bietet seinen Benutzern viele hilfreiche Funktionen, um sicherzustellen, dass wichtige Betriebssystemaufgaben erledigt werden. Sehen Sie sich die verfügbaren Funktionen an und verwenden Sie diese Funktionen für Ihre eigenen Aufgaben.