System crontab:
/etc/crontab
Wurzel crontab:
sudo crontab -u root -e
Welcher Weg wird bevorzugt? Da sie alle Aufgaben innerhalb der Administratorrechte ausführen.
/etc/crontab
ist die systemweite Crontab.
Das Format von /etc/crontab
ist wie folgt:
# m h dom mon dow user command
* * * * * someuser echo 'foo'
Während crontab -e
es sich um einen Benutzer handelt, ist es erwähnenswert, dass -u
der Befehl crontab ohne Argument an die crontab des aktuellen Benutzers gesendet wird. Sie können die crontab -e -u <username>
Crontab eines bestimmten Benutzers bearbeiten.
Beachten Sie, dass in einer Crontab pro Benutzer kein Feld "Benutzer" vorhanden ist.
# m h dom mon dow command
* * * * * echo 'foo'
Ein Aspekt von Crontabs, der verwirrend sein kann, ist, dass die Wurzel auch eine eigene Crontab hat. zB crontab -e -u root
wird nicht bearbeitet /etc/crontab
Siehe Cron konfigurieren .
In Linux-Distributionen werden Crontabs pro Benutzer normalerweise gespeichert in: /var/spool/crontabs/<username>
Verweise
/superuser/290093/difference-between-etc-crontab-and-crontab-e
/etc/crontab
ich Roots Crontab und vermeide es, nur weil ich es gewohnt bincrontab -e
/etc/cron.d (und seine Geschwister cron.daily / wöchentlich / monatlich) wird für alle System-Crontabs bevorzugt. Sie sollten / etc / crontab nicht berühren müssen.
Es ist wichtig, Cron-Einträge in mehreren Dateien nach ihrer Funktionalität zu trennen, wenn Sie planen, Dinge zu verwalten oder zu automatisieren. Dateien unter /etc/cron.d können einfach mit Paketen oder Konfigurationsverwaltungstools wie Puppet und Chef verwaltet werden. Roots Crontab OTOH kann von nichts anderem als vom Menschen praktisch nicht gewartet werden.
Kurz gesagt, für Systemaufgaben können Sie /etc/cron.* verwenden. Wenn der Root-Benutzer etwas tun soll, verwenden Sie die crontab von root. / etc / crontab sollte unberührt bleiben und von einem Paket verwaltet werden.
quelle