Startseite > Paket- & Systemverwaltung > crontab

Vollständiger Leitfaden zum crontab-Befehl: So planen Sie wiederkehrende Aufgaben

`crontab` ist ein Befehl, der in Linux/Unix-Systemen verwendet wird, um bestimmte Befehle oder Skripte zu festgelegten Zeiten regelmäßig auszuführen. Es spielt eine sehr wichtige Rolle bei der Automatisierung wiederkehrender Aufgaben wie Systemwartung, Backups und Datensynchronisierung.

Überblick über crontab

crontab ist eine Abkürzung für 'cron table', eine Datei, die die geplanten Aufgaben eines Benutzers enthält. Jede Zeile dieser Datei definiert eine Aufgabe (job), die der cron-Daemon liest und zur festgelegten Zeit ausführt.

Struktur der crontab-Felder

Jede Zeile in der crontab-Datei besteht aus 6 Feldern. Die ersten 5 Felder definieren die Ausführungszeit, und das letzte Feld definiert den auszuführenden Befehl.

Details der Zeitfeldfelder
Feld Beschreibung Bereich
1 Minute 0-59
2 Stunde 0-23
3 Tag des Monats 1-31
4 Monat 1-12
5 Tag der Woche 0-7 (0 und 7 sind Sonntag)
6 Befehl Der auszuführende Befehl oder das Skript

Sonderzeichen

Verwenden Sie Sonderzeichen in den Zeitfeldern, um die Zeit flexibler anzugeben.

  • `*`: Jede Zeit (z.B.: jede Minute, jede Stunde)
  • `,`: Mehrere Werte angeben (z.B.: `1,3,5` -> 1, 3, 5 Minuten)
  • `-`: Bereich angeben (z.B.: `10-15` -> von 10 bis 15 Minuten)
  • `/`: Intervall angeben (z.B.: `*/10` -> alle 10 Minuten)

Hauptoptionen

Sehen Sie sich die Verwaltungsoptionen der crontab-Datei an, die die Kernfunktionen des crontab-Befehls darstellen.

1. Verwaltung der crontab-Datei

2. Benutzerverwaltung

Erzeugter Befehl:

Kombinieren Sie die Befehle.

Beschreibung:

`crontab` Führen Sie den Befehl aus.

Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.

Häufig verwendete Beispiele

Lernen Sie, wie Sie mit crontab verschiedene wiederkehrende Aufgaben einrichten.

Backup-Skript täglich um 2:30 Uhr ausführen

crontab -e
30 2 * * * /home/user/backup.sh

Stellt ein, dass das Skript `/home/user/backup.sh` täglich um 2:30 Uhr ausgeführt wird.

Systemaktualisierung jeden Montag um 8 Uhr

crontab -e
0 8 * * 1 sudo apt update && sudo apt upgrade -y

Aktualisiert die Systempakete jeden Montag um 8 Uhr. (basierend auf Ubuntu/Debian)

Protokolldatei alle 10 Minuten bereinigen

crontab -e
*/10 * * * * echo '' > /var/log/app.log

Löscht den Inhalt der Datei `/var/log/app.log` alle 10 Minuten.

Webserver zu einer bestimmten Zeit neu starten

crontab -e
0 4 1 * * sudo systemctl restart nginx

Startet den Webserver (nginx) am 1. eines Monats um 4 Uhr morgens neu.

Aufgabe stündlich von 6 bis 18 Uhr ausführen

crontab -e
0 6-18 * * * /path/to/myscript.sh

Führt `myscript.sh` stündlich von 6 bis 18 Uhr aus.

crontab installieren (falls erforderlich)

In den meisten Linux-Distributionen ist es standardmäßig installiert, jedoch müssen in einigen minimalen Installationsumgebungen möglicherweise das cron-Daemon-Paket installiert werden.

Debian/Ubuntu

sudo apt update
sudo apt install cron

Installiert das cron-Daemon auf Ubuntu- oder Debian-basierten Systemen.

CentOS/RHEL/Fedora

sudo yum install cronie
sudo systemctl enable crond
sudo systemctl start crond

Installiert das cron-Daemon auf CentOS-, RHEL- oder Fedora-basierten Systemen.


Verwandte Befehle

Funktional ähnliche oder häufig zusammen verwendete Befehle.


Gleiche Kategorie Befehle