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

6 Beispiele für Linux-Crontab-Befehle

Der Crontab-Befehl verwaltet die Cron-Tabelle, die vom Cron-Daemon verwendet wird, um die Cron-Jobs auszuführen. Dieser Artikel erklärt die verschiedenen Befehlszeilenoptionen des crontab-Befehls.

1. Anpassung der Crontab anderer Benutzer mit Option -u

-u steht für Benutzer. Darauf sollte ein gültiger Benutzername im System folgen. Die Option -u allein macht nichts. Es sollte mit anderen Optionen kombiniert werden. Tatsächlich kann es mit allen anderen crontab-Befehlszeilenoptionen kombiniert werden.

Wenn Sie -u Benutzername nicht angeben, werden Crontab-Befehle für den aktuellen Benutzer ausgeführt. Beispielsweise werden alle folgenden crontab-Befehle für den aktuell angemeldeten Benutzer ausgeführt.

crontab -l
crontab -e
crontab -r
..

Wenn Sie -u Benutzername angeben, wird der crontab-Befehl für den angegebenen Benutzernamen ausgeführt. Beispielsweise werden alle folgenden crontab-Befehle auf dem Oracle-Benutzer ausgeführt.

crontab -u oracle -l
crontab -u oracle -e
crontab -u oracle -r
..

2. Cron-Tabelle mit Option -l

anzeigen

-l steht für Liste. Dies zeigt die Crontab des aktuellen Benutzers an. Da ich als Root angemeldet bin, werden die Cron-Jobs des Root-Benutzers angezeigt.

# crontab -l
53 00 * * 7 /bin/sh /home/root/bin/server-backup

Um die Cronjobs anderer Benutzer anzuzeigen, kombinieren Sie -l mit der Option -u.

# crontab -u oracle -l
01 00 * * * /bin/sh /home/oracle/bin/rman-backup

Die 15 crontab-Beispiele erläutern die praktische Verwendung der Cronjob-Einträge.

3. Bearbeiten Sie die Cron-Tabelle mit Option -e

-e steht für Bearbeiten. Auf diese Weise können Sie die Crontab des aktuellen Benutzers bearbeiten. Da ich als Root angemeldet bin, werden die Cron-Jobs von Root automatisch in einem Vim-Editor geöffnet und ich kann sie bearbeiten.

# crontab -e
53 00 * * 7 /bin/sh /home/root/bin/server-backup
~
~
/tmp/crontab.7dgqju

Wie Sie oben sehen, ist /tmp/crontab.7dgqju eine temporäre Datei, die automatisch von crontab erstellt wird und in der Sie Ihre Cron-Jobs bearbeiten können.

Wenn Sie Ihre Änderungen speichern und den Vim-Editor verlassen, wird eine der folgenden Meldungen angezeigt, je nachdem, ob Sie Änderungen vorgenommen haben oder nicht.

# crontab -e
crontab: no changes made to crontab

# crontab -e
crontab: installing new crontab

Hinweis:Der Editor, den crontab verwendet, um die Cron-Jobs zur Bearbeitung zu öffnen, hängt von der Umgebungsvariable VISUAL oder EDITOR ab. Standardmäßig wird der Vim-Editor in der Linux-Umgebung verwendet. Aber Sie können es mit der Umgebungsvariable VISUAL/EDITOR ändern.

Um die Cronjobs anderer Benutzer zu bearbeiten, kombinieren Sie -e mit der Option -u.

# crontab -u oracle -e
crontab: installing new crontab

Um die Bedeutung der crontab-Einträge selbst zu verstehen, lesen Sie Wie man einen Cron-Job alle 5 Minuten (oder Stunden, oder Tage oder Monate) ausführt.

4. Crontab aus einer Datei laden

Anstatt die Crontab manuell zu bearbeiten, um neue Jobs hinzuzufügen, können Sie auch alle Cron-Jobs aus einer Datei hochladen. Dies ist hilfreich, wenn Sie viele Server mit denselben Cron-Job-Einträgen warten müssen.

Im folgenden Beispiel befinden sich alle Cronjobs in der Datei /home/root/mycronjobs.txt.

# cat /home/root/mycronjobs.txt
53 00 * * 7 /bin/sh /home/root/bin/server-backup
01 00 * * * /bin/sh /home/root/bin/check-user-quota

Gehen Sie wie folgt vor, um die mycronjobs.txt-Jobs in die Crontab des aktuellen Benutzers hochzuladen:

# crontab /home/root/mycronjobs.txt

Überprüfen Sie, ob die Cron-Jobs erfolgreich hochgeladen wurden.

# crontab -l
53 00 * * 7 /bin/sh /home/root/bin/server-backup
01 00 * * * /bin/sh /home/root/bin/check-user-quota

Hinweis:Seien Sie vorsichtig, wenn Sie diese Upload-Methode verwenden, da dadurch alle aktuellen Cronjob-Einträge gelöscht werden, bevor die neuen hochgeladen werden.

Um den Cron-Job von einer Datei zu einem anderen Benutzer hochzuladen, kombinieren Sie ihn mit der Option -u.

# crontab -u oracle /home/oracle/mycronjobs.txt

5. Fügen Sie SELinux Security mit Option -s

hinzu

-s steht für SELinux. Dadurch wird die Variable MLS_LEVEL zur Crontab hinzugefügt, die den aktuellen SELinux-Sicherheitskontext enthält.

Um die Option -s zu verwenden, sollten Sie die Cronjobs aus einer Datei hochladen.

# cat /home/root/mycronjobs.txt
53 00 * * 7 /bin/sh /home/root/bin/server-backup
01 00 * * * /bin/sh /home/root/bin/check-user-quota

# crontab -s /home/root/mycronjobs/my.txt
SELINUX_ROLE_TYPE=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
53 00 * * 7 /bin/sh /home/root/bin/server-backup
01 00 * * * /bin/sh /home/root/bin/check-user-quota

Abhängig von Ihrem System wird oben entweder die Variable SELUNUX_ROLE_TYPE oder die Variable MLS_LEVEL hinzugefügt, die die SELinux-Sicherheitskontextzeichenfolge enthält. Wenn Sie SELinux nicht in Ihrer Umgebung verwenden, machen Sie sich keine Gedanken darüber, was diese Option bewirkt. SELinux ist ein separates Diskussionsthema, das wir in zukünftigen Artikeln ausführlich behandeln werden.

6. Löschen Sie alle Cron-Jobs mit Option -r

-r steht für entfernen. Dadurch werden alle Cron-Job-Einträge des aktuellen Benutzers entfernt, wie unten gezeigt.

# crontab -l
53 00 * * 7 /bin/sh /home/root/bin/server-backup
01 00 * * * /bin/sh /home/root/bin/check-user-quota

# crontab -r

# crontab -l
no crontab for root

-i steht für interaktiven Modus. Wenn Sie -i mit -r kombinieren, werden Sie um eine Bestätigung gebeten, bevor alle Crontab-Einträge entfernt werden.

# crontab -ir
crontab: really delete root's crontab? n

Um die Cronjobs anderer Benutzer zu entfernen, kombinieren Sie -r mit der Option -u.

# crontab -u oracle -l
01 00 * * * /bin/sh /home/oracle/bin/rman-backup

# crontab -u oracle -r

# crontab -u oracle -l
no crontab for oracle

Linux
  1. 7 Beispiele für Linux-df-Befehle

  2. sa-Befehlsbeispiele in Linux

  3. ac-Befehlsbeispiele in Linux

  4. df-Befehlsbeispiele in Linux

  5. du-Befehlsbeispiele in Linux

9 Beispiele für tee-Befehle unter Linux

9 diff-Befehlsbeispiele in Linux

Linux-IP-Befehl mit Beispielen

15 Linux-PS-Befehl mit Beispielen

8 Beispiele für LDD-Befehle unter Linux

id-Befehlsbeispiele in Linux