Detaillierte Erläuterung der geplanten Aufgaben für normale Benutzer unter Linux

Detaillierte Erläuterung der geplanten Aufgaben für normale Benutzer unter Linux

Vorwort

Normale Benutzer definieren geplante Crontab-Aufgaben: Beispielsweise definiert ein Oracle-Benutzer eine geplante Aufgabe: Drucken Sie das aktuelle Verzeichnis jede Minute

[oracle@node2 ~]$ crontab -e

*/1 * * * * /bin/ls -al > /tmp/ls.log

Wie kann festgestellt werden, ob eine geplante Aufgabe ausgeführt wurde? Zunächst muss der Crond-Dienst laufen

[oracle@node2 ~]$ Dienst-Crond-Status
Umleitung zu /bin/systemctl status crond.service
● crond.service - Befehlsplaner
Geladen: geladen (/usr/lib/systemd/system/crond.service; aktiviert; Vendor-Vorgabe: aktiviert)
Aktiv: aktiv (läuft) seit Sonntag, 15.07.2018, 08:27:38 EDT; vor 2 Min. 43 Sek.
Haupt-PID: 6189 (crond)
CGroup: /system.slice/crond.service
└─6189 /usr/sbin/crond -n
[oracle@node2 ~]$

1. Verwenden Sie den Mail-Befehl als Root-Benutzer

[root@node2 ~]# mail
Heirloom Mail Version 12.5 05.07.10. Geben Sie ? ein, um Hilfe zu erhalten.
"/var/spool/mail/root": 801 Nachrichten 9 neue 94 ungelesen
N795 (Cron Daemon) So., 15. Juli 08:25 35/932 „Cron <root@node2> /bin/ls“
N796 (Cron Daemon) So., 15. Juli 08:26 35/932 „Cron <root@node2> /bin/ls“
N797 (Cron Daemon) So., 15. Juli 08:27 35/932 „Cron <root@node2> /bin/ls“
N798 (Cron Daemon) So., 15. Juli 08:28 35/932 „Cron <root@node2> /bin/ls“
N799 (Cron Daemon) So., 15. Juli 08:29 35/932 „Cron <root@node2> /bin/ls“
N800 (Cron Daemon) So., 15. Juli 08:30 35/932 „Cron <root@node2> /bin/ls“
& Datei
"/var/spool/mail/root": 801 Nachrichten 9 neue 94 ungelesen
& H
>N793 (Cron Daemon) So. 15. Juli 08:23 35/932 „Cron <root@node2> /bin/ls“
N794 (Cron Daemon) So., 15. Juli 08:24 35/932 „Cron <root@node2> /bin/ls“
N795 (Cron Daemon) So., 15. Juli 08:25 35/932 „Cron <root@node2> /bin/ls“
N796 (Cron Daemon) So., 15. Juli 08:26 35/932 „Cron <root@node2> /bin/ls“
N797 (Cron Daemon) So., 15. Juli 08:27 35/932 „Cron <root@node2> /bin/ls“
N798 (Cron Daemon) So., 15. Juli 08:28 35/932 „Cron <root@node2> /bin/ls“
N799 (Cron Daemon) So., 15. Juli 08:29 35/932 „Cron <root@node2> /bin/ls“
N800 (Cron Daemon) So., 15. Juli 08:30 35/932 „Cron <root@node2> /bin/ls“
&800
Nachricht 800:
Von [email protected] So Jul 15 08:30:01 2018
Rückweg: <[email protected]>
X-Original-To: Wurzel
Zugestellt an: [email protected]
Von: „(Cron Daemon)“ <[email protected]>
An: [email protected]
Betreff: Cron <root@node2> /bin/ls
Inhaltstyp: Text/Plain; Zeichensatz=UTF-8
Automatisch übermittelt: automatisch generiert
Vorrang: Masse
X-Cron-Umgebung: <XDG_SESSION_ID=278>
X-Cron-Env: <XDG_RUNTIME_DIR=/run/user/0>
X-Cron-Env: <LANG=en_US.UTF-8>
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=Stamm>
X-Cron-Env: <BENUTZER=root>
Datum: Sonntag, 15. Juli 2018, 08:30:01 -0400 (EDT)
Status: R
\
anaconda-ks.cfg
Desktop
Unterlagen
Downloads
initial-setup-ks.cfg
Musik
Bilder
Öffentlich
Vorlagen
Videos

Verwenden Sie in der interaktiven mial-Umgebung den Befehl file, um die Gesamtzahl der aktuellen E-Mails und andere Informationen anzuzeigen. Verwenden Sie head, um die neueste E-Mail anzuzeigen, und geben Sie die Nummer ein, um die detaillierten Informationen der E-Mail anzuzeigen.

2. Zeigen Sie das Protokoll an: tail -n 10 /var/log/cron

[root@node2 ~]# tail -n 10 /var/log/cron
15. Juli 08:31:01 node2 CROND[6297]: (root) CMD (/bin/ls)
15. Juli 08:31:01 node2 CROND[6298]: (Oracle) CMD (/bin/ls -al > /tmp/ls.log)
15. Juli 08:32:01 node2 CROND[6321]: (Oracle) CMD (/bin/ls -al > /tmp/ls.log)
15. Juli 08:32:01 node2 CROND[6322]: (root) CMD (/bin/ls)
15. Juli 08:33:02 node2 CROND[6342]: (root) CMD (/bin/ls)
15. Juli 08:33:02 node2 CROND[6343]: (oracle) CMD (/bin/ls -al > /tmp/ls.log )
15. Juli 08:34:01 node2 CROND[6362]: (root) CMD (/bin/ls)
15. Juli 08:34:01 node2 CROND[6363]: (Oracle) CMD (/bin/ls -al > /tmp/ls.log)
15. Juli 08:35:01 node2 CROND[6382]: (Oracle) CMD (/bin/ls -al > /tmp/ls.log)
15. Juli 08:35:01 node2 CROND[6383]: (root) CMD (/bin/ls)
[root@node2 ~]#

Die Protokolldatei protokolliert die Ausführung geplanter Aufgaben für alle Benutzer

3. Verwenden Sie E-Mail, um als normaler Benutzer anzuzeigen

(In der geplanten Aufgabe muss der Benutzer, der die geplante Aufgabe ausführt, eindeutig definiert sein. Andernfalls wird die E-Mail möglicherweise nicht empfangen, selbst wenn die geplante Aufgabe unter dem Oracle-Benutzer definiert ist.)

[oracle@node2 ~]$ crontab -l
*/1 * * * * oracle /bin/ls -al > /tmp/ls.log
[oracle@node2 ~]$
[oracle@node2 ~]$ mail
Heirloom Mail Version 12.5 05.07.10. Geben Sie ? ein, um Hilfe zu erhalten.
"/var/spool/mail/oracle": 6 Nachrichten 1 ungelesen
1 (Cron Daemon) Montag, 5. März, 14:10 Uhr, 52/2476 „Cron <oracle@localhost> ls -al“
2 (Cron Daemon) So., 15. Juli 06:10 57/2777 „Cron <oracle@node2> /bin/ls -al“
3 (Cron Daemon) So., 15. Juli 06:11 57/2777 „Cron <oracle@node2> /bin/ls -al“
4 (Cron Daemon) So., 15. Juli 06:12 57/2778 „Cron <oracle@node2> /bin/ls -al“
5 (Cron Daemon) So., 15. Juli 06:13 57/2778 „Cron <oracle@node2> /bin/ls -al“
>U 6 (Cron Daemon) So., 15. Juli 08:38 26/929 „Cron <oracle@node2> oracle /bin/ls -al > /tmp/ls.log“
und

Die Datei /var/log/cron kann von normalen Benutzern nicht direkt angezeigt werden

[oracle@node2 ~]$ tail -n 10 /var/log/cron
tail: „/var/log/cron“ kann nicht zum Lesen geöffnet werden: Berechtigung verweigert
Sie haben neue E-Mails in /var/spool/mail/oracle
[oracle@node2 ~]$

Es gibt eine andere Möglichkeit, geplante Aufgaben in die Datei /etc/crontab zu schreiben, aber in centos7 führt das Schreiben und Ausführen in dieser Datei zu einem Fehler

[oracle@node2 ~]$ cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=Stamm
# Weitere Einzelheiten finden Sie unter man 4 crontabs
# Beispiel einer Jobdefinition:
# .---------------- Minute (0 - 59)
# | .------------- Stunde (0 - 23)
# | | .---------- Tag des Monats (1 - 31)
# | | | .------- Monat (1 – 12) ODER Jan., Feb., März, Apr. …
# | | | | .---- Wochentag (0 - 6) (Sonntag=0 oder 7) ODER So, Mo, Di, Mi, Do, Fr, Sa
# | | | | |
# * * * * * Benutzername-Befehl, der ausgeführt werden soll
[oracle@node2 ~]$

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • So verwenden Sie cron, um Aufgaben in Linux regelmäßig auszuführen
  • Konfigurationsmethode für geplante Linux-Crontab-Aufgaben (ausführliche Erklärung)
  • Linux verwendet crontab, um PHP-Ausführungsplan-Timing-Aufgaben zu implementieren
  • Der Server führt regelmäßig geplante Aufgaben aus und greift regelmäßig auf Seiten zu (Windows/Linux)
  • So verwenden Sie crontab, um eine geplante Aufgabe einmal pro Sekunde in Linux auszuführen
  • Detaillierte Erklärung zur Verwendung von PHP zum Planen von Cron-Aufgaben in Linux
  • Wie man Aufgaben unter Linux regelmäßig ausführt und Anleitungen zur Verwendung von crontab (gesammelt und sortiert)
  • Detaillierte Erläuterung des Selbststarts von Python-Skripten und der geplanten Aufgaben unter Linux
  • Linux verwendet geplante Aufgaben, um Protokolle vor 45 Tagen jede Woche zu bereinigen
  • Beispiel einer URL für den Zugriff auf geplante Linux-Aufgaben

<<:  Untersuchung und Korrektur des seltsamen Verhaltens von parseInt() in js

>>:  Grundlegendes Lernen und Erfahrungsaustausch zu MySQL-Transaktionen

Artikel empfehlen

Detaillierte Schritte zum Bereitstellen eines Tomcat-Servers basierend auf IDEA

Inhaltsverzeichnis Einführung Schritt 1 Schritt 2...

So verwenden Sie den Linux-Paste-Befehl

01. Befehlsübersicht Der Einfügebefehl fügt die e...

Lösung für das MySQL Master-Slave-Verzögerungsproblem

Heute werden wir uns ansehen, warum es zu Master-...

Zusammenfassung der Wissenspunkte zur MySQL-Master-Slave-Replikation

Eine Optimierungslösung, wenn ein einzelner MySQL...

Detaillierte Erklärung der Verwendung von Object.assign() in ES6

Inhaltsverzeichnis 2. Zweck 2.1 Objekten Eigensch...

MySQL-Sequenz AUTO_INCREMENT ausführliche Erklärung und Beispielcode

MySQL-Sequenz AUTO_INCREMENT ausführliche Erkläru...

Eine kurze Diskussion über ereignisgesteuerte Entwicklung in JS und Nodejs

Inhaltsverzeichnis Ereignisgesteuert und Publish-...

Installieren Sie Linux mithilfe einer virtuellen VMware-Maschine (CentOS7-Image).

1. VMware herunterladen und installieren Verknüpf...

So erstellen Sie dynamische QML-Objekte in JavaScript

1. Objekte dynamisch erstellen Es gibt zwei Mögli...

JavaScript imitiert den Jingdong-Karusselleffekt

In diesem Artikel wird der spezifische Code für J...

Einführung in das Layout des HTML-Seitenquellcodes_Powernode Java Academy

Einführung in das Layout des HTML-Seitenquellcode...