Wie man prüft, ob ein Sicherungsplan in Linux festgelegt ist

LinuxLinuxBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen Sie, wie Sie auf einem Linux-System nach geplanten Sicherungstasks suchen, indem Sie verschiedene Orte untersuchen, an denen Cron-Jobs konfiguriert sind. Sie beginnen damit, die Cron-Jobs des aktuellen Benutzers mit crontab -l aufzulisten, um zu sehen, ob persönliche Zeitpläne festgelegt sind.

Als Nächstes erkunden Sie die systemweiten Cron-Jobs, indem Sie das Verzeichnis /etc/cron.d überprüfen, das oft geplante Aufgaben enthält, die von Softwarepaketen installiert wurden. Abschließend überprüfen Sie den Inhalt des Verzeichnisses /etc/cron.daily, um zu sehen, ob irgendwelche täglichen Skripte, einschließlich möglicher Sicherungsroutinen, so konfiguriert sind, dass sie automatisch ausgeführt werden.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/SystemInformationandMonitoringGroup(["System Information and Monitoring"]) linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") linux/SystemInformationandMonitoringGroup -.-> linux/crontab("Job Scheduling") subgraph Lab Skills linux/ls -.-> lab-558699{{"Wie man prüft, ob ein Sicherungsplan in Linux festgelegt ist"}} linux/cat -.-> lab-558699{{"Wie man prüft, ob ein Sicherungsplan in Linux festgelegt ist"}} linux/crontab -.-> lab-558699{{"Wie man prüft, ob ein Sicherungsplan in Linux festgelegt ist"}} end

Auflisten der Benutzer-Cron-Jobs mit crontab -l

In diesem Schritt lernen Sie, wie Sie geplante Aufgaben für den aktuellen Benutzer mit dem Befehl crontab anzeigen können.

cron ist ein zeitbasierter Job-Scheduler in Unix-ähnlichen Betriebssystemen. Es ermöglicht Ihnen, Befehle oder Skripte so zu planen, dass sie in festgelegten Intervallen automatisch ausgeführt werden. Diese geplanten Aufgaben werden oft "Cron-Jobs" genannt.

Jeder Benutzer auf dem System kann seine eigene Reihe von Cron-Jobs haben. Diese werden in einer speziellen Datei namens "Crontab" (Cron-Tabelle) gespeichert.

Um die Cron-Jobs für den aktuellen Benutzer (labex) anzuzeigen, verwenden Sie den Befehl crontab mit der Option -l. Das -l steht für "list" (auflisten).

Öffnen Sie das Terminal, wenn Sie es noch nicht getan haben. Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:

crontab -l

Da dies eine frische Umgebung ist, ist es wahrscheinlich, dass der Benutzer labex noch keine Cron-Jobs eingerichtet hat. Wenn das der Fall ist, sehen Sie eine Meldung ähnlich dieser:

no crontab for labex

Diese Meldung bedeutet einfach, dass keine geplanten Aufgaben für den Benutzer labex konfiguriert sind.

Wenn Cron-Jobs konfiguriert wären, würde die Ausgabe jede geplante Aufgabe in einer neuen Zeile anzeigen und dabei den Zeitplan und den auszuführenden Befehl angeben.

Das Verständnis von Benutzer-Cron-Jobs ist der erste Schritt bei der Verwaltung von geplanten Aufgaben auf einem Linux-System. In den nächsten Schritten werden wir die systemweiten Cron-Jobs untersuchen.

Klicken Sie auf Weiter, um fortzufahren.

Prüfen der System-Cron-Jobs in /etc/cron.d

Im vorherigen Schritt haben Sie gelernt, wie Sie die Cron-Jobs für einen bestimmten Benutzer anzeigen können. Jetzt wollen wir uns die systemweiten Cron-Jobs ansehen.

Systemweite Cron-Jobs werden normalerweise im Verzeichnis /etc/cron.d/ gespeichert. Im Gegensatz zu Benutzer-Crontabs, die mit dem Befehl crontab verwaltet werden, werden systemweite Cron-Jobs in einzelnen Dateien innerhalb dieses Verzeichnisses definiert.

Diese Dateien werden oft von installierten Softwarepaketen erstellt, um Aufgaben zu planen, die für das gesamte System ausgeführt werden müssen, wie z. B. Systemupdates, Log-Rotation oder Cleanup-Skripte.

Um die Dateien im Verzeichnis /etc/cron.d/ anzuzeigen, können Sie den Befehl ls verwenden. Da dieses Verzeichnis dem Root-Benutzer gehört, müssen Sie sudo verwenden, um seinen Inhalt aufzulisten.

Geben Sie den folgenden Befehl im Terminal ein und drücken Sie die Eingabetaste:

sudo ls /etc/cron.d/

Sie sehen möglicherweise eine Ausgabe ähnlich dieser, die verschiedene Dateien auflistet:

anacron  e2scrub_all  phpsessionclean

Die spezifischen Dateien, die Sie sehen, können je nach installierter Software auf dem System variieren. Jede Datei in diesem Verzeichnis repräsentiert eine systemweite Cron-Job-Konfiguration.

Um den Inhalt einer dieser Dateien, beispielsweise phpsessionclean, anzuzeigen, können Sie den Befehl cat verwenden. Auch hier benötigen Sie sudo, da die Datei dem Root-Benutzer gehört.

Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:

sudo cat /etc/cron.d/phpsessionclean

Sie sehen den Inhalt der Datei, der definiert, wann und wie das Skript phpsessionclean ausgeführt wird. Das Format ähnelt einem Benutzer-Crontab, enthält aber auch ein Benutzerfeld, um anzugeben, welcher Benutzer den Befehl ausführen soll (oft root).

## This file is installed by the php-common package
#
## The script will clean up old session files.
#
## See /usr/lib/php/sessionclean for details.

09,39 *	* * *	root	[ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi

Diese Ausgabe zeigt, dass das Skript phpsessionclean für die 9. und 39. Minute jeder Stunde, jeden Tag geplant ist und vom Benutzer root ausgeführt wird.

Das Untersuchen der Dateien in /etc/cron.d/ hilft Ihnen zu verstehen, welche automatisierten Aufgaben auf Systemebene ausgeführt werden.

Klicken Sie auf Weiter, um zum nächsten Schritt zu gelangen.

Überprüfen der täglichen Cron-Jobs in /etc/cron.daily

Neben den einzelnen Dateien in /etc/cron.d/ verwenden Linux-Systeme oft Verzeichnisse wie /etc/cron.daily/, /etc/cron.weekly/ und /etc/cron.monthly/, um Skripte für bestimmte Zeitintervalle zu planen.

Jedes ausführbare Skript, das in /etc/cron.daily/ platziert wird, wird einmal am Tag ausgeführt. Ebenso werden Skripte in /etc/cron.weekly/ einmal pro Woche und solche in /etc/cron.monthly/ einmal pro Monat ausgeführt.

Diese Verzeichnisse werden normalerweise von einem systemweiten Cron-Job verwaltet, der ein Skript wie run-parts ausführt, um alle in diesen Verzeichnissen gefundenen Skripte auszuführen.

Lassen Sie uns den Inhalt des Verzeichnisses /etc/cron.daily/ untersuchen. In diesem Verzeichnis befinden sich Skripte, die täglich ausgeführt werden sollen.

Verwenden Sie den Befehl ls mit sudo, um die Dateien in diesem Verzeichnis aufzulisten:

sudo ls /etc/cron.daily/

Sie werden wahrscheinlich eine Liste von Skripten sehen, wie z. B.:

apt-compat  dpkg  logrotate  man-db  passwd  update-notifier-common

Dies sind Skripte, die tägliche Wartungsaufgaben auf dem System ausführen, wie z. B. das Aktualisieren der Paketliste (apt-compat), das Rotieren von Log-Dateien (logrotate) und das Aktualisieren der Handbuchseiten-Datenbank (man-db).

Um zu verstehen, was eines dieser Skripte tut, können Sie seinen Inhalt mit sudo cat anzeigen. Beispielsweise lassen wir uns das logrotate-Skript ansehen:

sudo cat /etc/cron.daily/logrotate

Die Ausgabe zeigt den Code des Skripts, der für das Rotieren von System-Log-Dateien verantwortlich ist, um zu verhindern, dass sie zu groß werden.

#!/bin/sh

test -x /usr/sbin/logrotate || exit 0
/usr/sbin/logrotate /etc/logrotate.conf
exit 0

Dieses Skript überprüft einfach, ob der Befehl logrotate existiert und ausführbar ist, und wenn dies der Fall ist, wird logrotate mit der Konfigurationsdatei /etc/logrotate.conf ausgeführt.

Das Verständnis der Skripte in /etc/cron.daily/ und ähnlichen Verzeichnissen gibt Ihnen Einblicke in die automatisierten Wartungsaufgaben, die das reibungslose Funktionieren des Systems gewährleisten.

Sie haben nun Benutzer-Cron-Jobs, systemweite Cron-Jobs in /etc/cron.d/ und tägliche Cron-Skripte in /etc/cron.daily/ untersucht. Dieses Wissen ist grundlegend für die Verwaltung von geplanten Aufgaben auf einem Linux-System.

Klicken Sie auf Weiter, um das Lab abzuschließen.

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie geplante Sicherungsaufgaben in Linux überprüfen können, indem Sie die Cron-Jobs untersuchen. Sie haben begonnen, indem Sie die Cron-Jobs des aktuellen Benutzers mit crontab -l aufgelistet haben und verstanden haben, dass dieser Befehl benutzerspezifische geplante Aufgaben anzeigt.

Als Nächstes haben Sie die systemweiten Cron-Jobs untersucht, indem Sie das Verzeichnis /etc/cron.d/ überprüft haben. Dieses Verzeichnis enthält Dateien, die Aufgaben definieren, die für das gesamte System geplant sind und oft von Softwarepaketen installiert werden. Schließlich haben Sie die täglichen Cron-Jobs im Verzeichnis /etc/cron.daily überprüft, das normalerweise Skripte enthält, die einmal am Tag ausgeführt werden sollen. Durch die Überprüfung dieser Speicherorte können Sie feststellen, ob Sicherungspläne auf einem Linux-System konfiguriert sind.