GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux-Betriebssystemdienst „anacron“

Dienstname

anacron

Cron gegen Anacron

Ähnlich wie der Cron-Dienst führt der Anacron-Dienst Anwendungen oder Skripte zu bestimmten Zeiten und Daten aus. Dies ermöglicht einen zuverlässigen unbeaufsichtigten Systembetrieb – geplante Ereignisse werden nicht verpasst, wenn das System ausfällt – stattdessen werden sie so schnell wie möglich nach ihrer geplanten Zeit ausgeführt. Kandidaten für eine Anacron-Aktion sind oft Systemadministrationsaktivitäten, wie z. B. Protokollrotation, die durchgeführt werden müssen, auch wenn sie spät sind.

Im Gegensatz zum Cron-Dienst verpasst anacron die Ausführung eines geplanten Jobs nicht, selbst wenn das System ausgeschaltet ist. Die Aktivität wird ausgeführt, wenn das System das nächste Mal verfügbar ist. Dies macht anacron zur bevorzugten Wahl, um wichtige Systemadministrationsaufgaben wie Backup oder Wiederherstellung von Speicherplatz einzuleiten.

Jobs werden typischerweise in drei Klassen eingeteilt – täglich, wöchentlich und monatlich. Steuerskripte sind gewöhnliche Shell-Befehlszeilen und werden im Verzeichnis /etc/cron.[class] abgelegt. Anacron stellt sicher, dass jeder Job im geplanten Intervall ausgeführt wird; Es gibt keine bestimmte garantierte Zeit für die Ausführung dieser Jobs. Bei jeder Ausführung des Jobs wird die Zeitstempeldatei /var/spool/anacron/cron.[class] aktualisiert. Diese Zeitstempeldatei ist auch derselbe Mechanismus, den Anacron verwendet, um festzustellen, ob die Jobs ausgeführt werden müssen.

Dienststeuerung

Um den Anacron-Dienst bei zukünftigen Neustarts und Herunterfahren zu verwalten, verwenden Sie das chkconfig-Tool:

# chkconfig anacron on
# chkconfig --list anacron
anacron 0:off 1:off 2:on 3:on 4:on 5:on 6:off
# chkconfig anacron off

Um den anacron-Dienst sofort zu steuern, verwenden Sie den Dienstbefehl:

# service anacron 
Usage: /etc/init.d/anacron {start|stop|restart|condrestart|status}

Die folgende Tabelle beschreibt jeden verfügbaren Befehl:

Befehl Beschreibung
beginnen Rufen Sie den anacron(8)-Daemon auf und geben Sie den Befehlszeilenschalter „-s“ ein. Dies zwingt anacron(8), alle geplanten Anwendungen und Skripte seriell auszuführen, anstatt sie alle parallel zu starten.
Halt Beendet den anacron(8)-Daemon. Alle aktiven Anwendungen oder Skripte sind nicht betroffen und werden bis zu ihrem Abschluss weiter ausgeführt.
Neustart Entspricht einem Stopp- und dann einem Startbefehl.
condrestart Ignoriert, wenn der Anacron-Dienst derzeit nicht ausgeführt wird, andernfalls gleichbedeutend mit einem Neustartbefehl. Wird normalerweise von RPM-Upgrades verwendet, um ein unbeabsichtigtes Starten des Dienstes zu vermeiden.
Status Zeigt „Anacron wurde gestoppt“ an, es sei denn, der Daemon führt aktiv geplante Anwendungen oder Skripte aus.

So überprüfen Sie, ob Anacron ausgeführt wird

Beachten Sie, dass das nicht standardmäßige Verhalten des Statusbefehls nicht verwendet werden kann, um festzustellen, ob anacron seit dem letzten Systemstart ausgeführt wurde. Verwenden Sie stattdessen den Zeitstempel der Dateien in /var/spool/anacron Verzeichnis. Diese Dateien werden berührt, wenn ihr entsprechendes Ereignis eintritt:

# ls -lrt /var/spool/anacron 
total 12
-rw-------. 1 root root 9 Jul 27 03:12 cron.monthly
-rw-------. 1 root root 9 Aug 18 03:10 cron.weekly
-rw-------. 1 root root 9 Aug 18 04:09 cron.daily

Die obige Ausgabe gibt an, dass das letzte monatliche Ereignis von Anacron am 27. Juli um 03:12 Uhr aufgetreten ist.

Dienstkonfiguration

Um den Anacron-Dienst zusammen mit seinem Daemon und zugehörigen Steuerdateien zu erhalten, installieren Sie das Anacron-Paket:

# yum install cronie-anacron.x86_64

Die Ereignisse, die Anacron erkennt, sind in /etc/anacrontab definiert Datei. Die Standarddatei wird unten gezeigt:

# cat /etc/anacrontab 
SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# Events are defined below
1 65 cron.daily run-parts /etc/cron.daily
7 70 cron.weekly run-parts /etc/cron.weekly
30 75 cron.monthly run-parts /etc/cron.monthly

Zeilen mit der Syntax VAR=VALUE weisen der Shell-Umgebung Werte zu, die an die Skripte und Anwendungen übergeben werden, die ausgeführt werden, wenn ein Ereignis eintritt. Jeder Anacron-Daemon hat keine festverdrahteten Ereignisse. Stattdessen werden Ereignisse explizit in der Datei /etc/anacrontab definiert. Standardmäßig sind Ereignisse alle ein, sieben und dreißig Tage definiert. Das Format einer Ereignisdefinition ist:

[days]  [delay]  [job_id]  [command] [[arg] ...]

Hier
Tage :definiert, wie oft der [Befehl] in Tagen ausgeführt werden soll.
Verzögerung :Die Anzahl der Minuten am Ereignistag, bevor der [Befehl] aufgerufen wird.
job_id :identifiziert den Anacron-Job in Protokolldateien und wird verwendet, um die in /var/spool/anacron

erstellte Zeitstempeldatei zu benennen


Linux
  1. Linux-Betriebssystemdienst „iptables“

  2. Linux-Betriebssystemdienst „Netzwerk“

  3. Linux-Betriebssystemdienst „portmap“

  4. Linux-Betriebssystemdienst „auditd“

  5. Linux-Betriebssystemdienst „nfs“

Linux-Betriebssystemdienst „hplip“

Linux-Betriebssystemdienst „smartd“

Linux-Betriebssystemdienst „irqbalance“

Linux-Betriebssystemdienst „rpcgssd“

Linux-Betriebssystemdienst „yum-updatesd“

Linux-Betriebssystemdienst „acpid“