Scroll to navigation

CRONTAB(1) Crontab-Benutzerhandbuch CRONTAB(1)

BEZEICHNUNG

crontab - Crontab-Dateien für einzelne Benutzer verwalten (Vixie Cron)

ÜBERSICHT

crontab [-h]

crontab [-u Benutzer] [-n] Datei

crontab [-u Benutzer] [-i] {-e | -l | -r}

BESCHREIBUNG

crontab ist das Programm, das zum Installieren, Deinstallieren oder Auflisten der Tabellen verwendet wird, die den cron(8)-Daemon in Vixie Cron versorgen. Jeder Benutzer kann seine eigene Crontab haben. Obwohl diese Dateien in /var/spool/cron/crontabs liegen, sollten sie nicht direkt bearbeitet werden.

Falls die Datei /etc/cron.allow existiert, dann müssen Sie darin aufgeführt sein (ein Benutzer pro Zeile), um diesen Befehl ausführen zu dürfen. Falls die Datei /etc/cron.allow nicht, die Datei /etc/cron.deny dafür aber existiert, dann dürfen Sie nicht in der Datei /etc/cron.deny aufgeführt sein, um diesen Befehl verwenden zu dürfen.

Falls keine der Dateien existiert, dann ist es (abhängig von den Site-spezifischen Konfigurationsparametern) entweder nur dem Superuser (Root) oder allen Benutzern erlaubt, diesen Befehl zu verwenden.

Falls beide Dateien existieren, erhält /etc/cron.allow Vorrang. Das bedeutet, dass /etc/cron.deny nicht berücksichtigt wird und Ihr Benutzer in /etc/cron.allow aufgeführt sein muss, um die Crontab verwenden zu können.

Unabhängig von der Existenz irgendeiner dieser Dateien darf der Systemadministrator (Root) immer eine Crontab einrichten. Auf standardmäßigen Debian-Systemen dürfen alle Benutzer diesen Befehl verwenden.

Falls die Option -h angegeben ist, zeigt crontab eine Hilfemeldung an und beendet sich unmittelbar.

Falls die Option -u angegeben ist, bezeichnet sie den Namen des Benutzers, dessen Crontab verwendet (beim Auflisten) oder geändert (beim Bearbeiten) werden soll. Ist diese Option nicht angegeben, untersucht crontab »Ihre« Crontab, das heißt, die Crontab der Person, die den Befehl ausführt. Beachten Sie, dass crontab von su(8) durcheinander gebracht werden kann. Daher sollten Sie aus Sicherheitsgründen stets die Option -u angeben, wenn Sie ihn innerhalb von su(8) ausführen.

Die erste Form dieses Befehls wird zum Installieren einer neuen Crontab aus einer benannten Datei oder aus der Standardeingabe verwendet, falls der Pseudo-Dateiname »-« angegeben ist.

Falls die Option -n angegeben ist, wird ein »Trockenlauf« durchgeführt: crontab untersucht die Syntax »Ihrer« Crontab und gibt, wenn diese korrekt ist, eine Erfolgsmeldung aus. Es wird jedoch nichts in irgendeine Crontab-Datei geschrieben.

Mit der Option -l wird die aktuelle Crontab in der Standardausgabe angezeigt. Beachten Sie hierzu den nachfolgenden Hinweis im Abschnitt DEBIAN-SPEZIFISCH.

Mit der Option -r wird die aktuelle Crontab entfernt.

Die Option -e wird zum Bearbeiten der aktuellen Crontab mit dem in den Umgebungsvariablen VISUAL oder EDITOR angegebenen Editor verwendet. Nachdem Sie den Editor beendet haben, wird die geänderte Crontab automatisch installiert. Falls keine der Umgebungsvariablen definiert ist, wird der Standardeditor /usr/bin/editor verwendet.

Die Option -i ändert das Verhalten der Option -r: Der Benutzer wird um die Eingabe von »y/Y« gebeten, um die Entfernung der Crontab zu bestätigen.

DEBIAN-SPEZIFISCH

Das unmodifizierte Verhalten von crontab -l ist die Anzeige der dreizeiligen Kopfzeile »DO NOT EDIT THIS FILE«, die bei der Installation einer Crontab an deren Anfang gesetzt wird. Das Problem ist, dass es die Sequenz

crontab -l | crontab -

nicht-idempotent macht — Sie fügen immer Kopien der Kopfzeilen hinzu. Dies ist bei Skripten problematisch, die sed zum Bearbeiten einer Crontab verwenden. Daher wurde das Standardverhalten der Option -l so geändert, dass keine solchen Kopfzeilen ausgegeben werden. Sie können das ursprüngliche Verhalten wieder aktivieren, indem Sie die Umgebungsvariable CRONTAB_NOHEADER auf »N« setzen. Dadurch wird der Befehl crontab -l veranlasst, die überflüssige Kopfzeile auszugeben.

HERVORHEBEN DER AUSGABE VON CRONTAB -L

Der Befehl crontab -l gibt reinen Text aus. Wenn ein TTY ANSI-Sequenzen zur Einfärbung dieses Textes unterstützen kann, können Sie die Ausgabe durch folgenden Aufruf hervorheben: crontab -l | spc -t crontab wenn der Hintergrund dunkel ist oder crontab -l | spc -t crontab-light wenn der Hintergrund hell ist.

Das Hervorhebungsschema kann mittels angepasster Versionen der Dateien /etc/supercat/spcrc-crontab* angepasst werden.

Sie können diesen Text mit dem im Paket bat enthaltenen Paket batcat(1) einfärben, hier ist ein Beispiel:

crontab -l | batcat --language Crontab

SIEHE AUCH

crontab(5), cron(8), spc(1)

DATEIEN

/etc/cron.allow, /etc/cron.deny

Die Dateien /etc/cron.allow und /etc/cron.deny müssen, sofern sie existieren, entweder für alle Benutzer oder für die Gruppe »crontab« lesbar sein. Sollte das nicht der Fall sein, verweigert cron(8) allen Benutzern den Zugriff, bis die Zugriffsrechte entsprechend angepasst wurden.

/var/spool/cron/crontabs

Im Verzeichnis /var/spool/cron/crontabs gibt es für die Crontab jedes Benutzers eine Datei. Benutzern ist es nicht erlaubt, die Dateien in diesem Verzeichnis direkt zu bearbeiten. Damit soll sichergestellt werden, dass nur Benutzer, denen dies vom System gestattet ist, periodisch wiederkehrende Aufgaben hinzufügen können, und nur syntaktisch korrekte Crontabs dort abgelegt werden. Das wird dadurch erzwungen, dass nur die Gruppe »crontab«« dort Schreibrechte hat und der Befehl crontab mit dem Setgid-Bit für diese spezifische Gruppe konfiguriert ist.

STANDARDS

Der Befehl crontab ist zu IEEE Std1003.2-1992 (»POSIX«) konform. Diese neue Befehlssyntax unterscheidet sich sowohl von den früheren Versionen von Vixie Cron als auch von der klassischen SVR3-Syntax.

DIAGNOSE

Eine hinreichend informative Meldung zur Benutzung wird angezeigt, wenn Sie es mit einer fehlerhaften Befehlszeile aufrufen.

cron(8) setzt voraus, dass jeder Eintrag in einer Crontab mit einem Zeilenvorschubzeichen endet. Falls dem letzten Eintrag in einer Crontab der Zeilenvorschub fehlt, betrachtet cron(8) die Crontab als (zumindest teilweise) beschädigt und verweigert deren Installation.

Die Benennung der Dateien unter /var/spool/cron/crontabs basiert auf dem Namen des jeweiligen Benutzerkontos. Crontab-Aufträge für Benutzer, deren Konten umbenannt wurden, werden nicht ausgeführt. Dies kann entweder aufgrund von Änderungen im lokalen System oder weil sie über eine zentrale Benutzerdatenbank (systemextern, zum Beispiel einen LDAP-Verzeichnisdienst) verwaltet werden, geschehen sein.

AUTOREN

Paul Vixie <paul@vix.com>

Schrieb diese Handbuchseite (1994).

Steve Greenland <stevegr@debian.org>

Betreute das Paket (1996-2005).

Javier Fernández-Sanguino Peña <jfs@debian.org>

Betreute das Paket (2005-2014).

Christian Kastner <ckk@debian.org>

Betreute das Paket (2010-2016).

Georges Khaznadar <georgesk@debian.org>

Betreute das Paket (2022-2024).

COPYRIGHT

Copyright © 1994 Paul Vixie

Darf frei verteilt werden, außer dass mein Name nicht aus den Quellen oder der Dokumentation entfernt werden darf (d.h. Sie keine Anerkennung für meine Arbeit bekommen), Sie Ihre Änderungen markieren (d.h. mir nicht mögliche Fehler von Ihnen vorgeworfen werden), Sie nicht diesen Hinweis ändern oder entfernen. Sie dürfen es verkaufen, wenn Sie dem Käufer die baufähigen Quellen bereitstellen. Mit dieser Software ist keinerlei Haftung irgendwelcher Art, weder ausdrücklich noch implizit, verbunden; Benutzung auf eigenes Risiko, die Verantwortung für Schäden (falls vorhanden) bei irgendjemandem durch die Verwendung dieser Software liegt ausschließlich beim Benutzer.

Seit 1994 wurden an dieser Handbuchseite viele Veränderungen durch die Debian-Entwickler, die Cron betreuten, vorgenommen. Oben finden Sie eine kurze Liste, weitere Informationen finden Sie in der Datei /usr/share/doc/cron/copyright.

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann <mario.blaettermann@gmail.com> und Helge Kreutzmann <debian@helgefjell.de> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.

26. März 2024 crontab