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

Wie kann ich eine Liste aller geplanten Cron-Jobs auf meinem Computer abrufen?

Abhängig davon, wie Ihr Linux-System eingerichtet ist, können Sie nachsehen in:

  • /var/spool/cron/* (Benutzer-Crontabs)
  • /etc/crontab (systemweite Crontab)

außerdem haben viele Distributionen:

  • /etc/cron.d/* Diese Konfigurationen haben dieselbe Syntax wie /etc/crontab

  • /etc/cron.hourly , /etc/cron.daily , /etc/cron.weekly , /etc/cron.monthly

Dies sind einfach Verzeichnisse, die ausführbare Dateien enthalten, die je nach Verzeichnisname stündlich, täglich, wöchentlich oder monatlich ausgeführt werden.

Darüber hinaus können Sie noch Jobs haben (siehe /var/spool/at/* ), Anacron (/etc/anacrontab und /var/spool/anacron/* ) und wahrscheinlich noch andere, die ich vergesse.


Bei den meisten Crons (z. B. Vixie-Cron - Debian/Ubuntu-Standard, Cronie - Fedora-Standard, Solaris Cron ...) erhalten Sie die Liste der geplanten Cron-Jobs für den aktuellen Benutzer über:

$ crontab -l

oder für einen anderen Benutzer über

# crontab -l -u juser

Um die Crontabs für alle Benutzer zu erhalten, können Sie alle Benutzer durchlaufen und diesen Befehl aufrufen.

Alternativ können Sie die Spool-Dateien nachschlagen. Üblicherweise werden sie unter /var/spool/cron gespeichert , z.B. für vcron folgendes Verzeichnis

/var/spool/cron/crontabs

enthält alle konfigurierten Crontabs aller Benutzer - mit Ausnahme des Root-Benutzers, der auch Jobs über die systemweite Crontab konfigurieren kann, die sich unter

befindet
/etc/crontab

Bei Cronie (Standard bei Fedora/CentOS) gibt es einen .d style config Verzeichnis auch für System-Cron-Jobs:

/etc/cron.d

(Wie immer die .d Verzeichnis vereinfacht die Verwaltung von Konfigurationseinträgen, die Teil verschiedener Pakete sind.)

Der Einfachheit halber stellen die meisten Distributionen auch Verzeichnisse bereit, in denen verknüpfte/gespeicherte Skripte regelmäßig ausgeführt werden, z. B.:

/etc/cron.daily
/etc/cron.hourly
/etc/cron.monthly
/etc/cron.weekly

Die zeitnahe Ausführung dieser Skripte wird normalerweise über run-parts verwaltet Einträge im System crontab oder per Anacron.

Mit Systemd (z. B. auf Fedora, CentOS 7, ...) kann die periodische Jobausführung zusätzlich über Timer-Units konfiguriert werden. Die aktivierten Systemtimer können angezeigt werden über:

$ systemctl list-timers

Beachten Sie, dass Benutzer neben root möglicherweise auch systemd-Instanzen des Benutzers ausführen, in denen Timer konfiguriert sind. Beispielsweise wird bei Fedora standardmäßig eine Benutzer-Systemd-Instanz für jeden Benutzer gestartet, der gerade angemeldet ist. Sie können erkannt werden über:

$ ps aux | grep 'systemd[ ]--user'

Diese Benutzer-Timer können aufgelistet werden über:

$ systemctl --user list-timers

Eine Alternative zur Ausgabe des list-timers Befehl ist, nach Timer-Unit-Dateien zu suchen (Muster:*.timer ) und symbolische Links zu ihnen in den üblichen System- und Benutzer-Systemd-Konfigurationsverzeichnissen:

$ find /usr/lib/systemd/ /etc/systemd -name '*.timer'
$ find /home '(' -path '/home/*/.local/share/systemd/user/*' \
              -o -path '/home/*/.config/systemd/*' ')' \
      -name '*.timer'  2> /dev/null

(Wie bei normalen Service-Units wird eine Timer-Unit aktiviert, indem ein symbolischer Link im rechten systemd-Konfigurationsverzeichnis erstellt wird.)

Siehe auch:

  • ArchWiki-Artikel über Cron
  • ArchWiki-Artikel über Systemd-Timer

Um alle Crons für den angegebenen Benutzer aufzulisten.

crontab -u Benutzername -l;

Um alle Crons für alle Benutzer aufzulisten

Führen Sie es als Superuser aus

#!/bin/bash
#List all cron jobs for all users
for user in `cat /etc/passwd | cut -d":" -f1`;
do 
crontab -l -u $user;
done

Linux
  1. Linux - So listen Sie alle Benutzer auf

  2. Wie kann ich alle vhosts in nginx auflisten

  3. Wie kann ich die Ergebnisse meiner Cronjobs anzeigen?

  4. Wie kann ich logrotate so einrichten, dass Protokolle stündlich rotieren?

  5. Wie kann ich alle gestoppten Jobs beenden?

So listen Sie alle aktuellen Cron-Jobs in Linux auf, zeigen sie an und zeigen sie an

Wie man Cron-Jobs unter Linux auflistet

Cron-Jobs alle 5, 10 oder 15 Minuten ausführen

Verschiedene Möglichkeiten zum Planen und Auflisten von CRON-Jobs in Linux

So zeigen Sie Cron-Jobs in Linux an oder listen sie auf

Wie man Cron-Jobs für ein Linux-System über PHP ausführt und auflistet