Cronjob

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
DEBIO
Beiträge: 130
Registriert: 01.04.2007 16:48:38

Cronjob

Beitrag von DEBIO » 12.11.2014 16:48:09

Hallo, wenn ich einen Cronjob erstellen möchte, gehe ich doch gewöhnlich hin und erweitere die

Code: Alles auswählen

/etc/crontab 
um einen job.
Was ist jetzt aber wenn ich mich als root anmelde und ein

Code: Alles auswählen

crontab -e
eingebe?
Erstelle ich jetzt eine neue Crontab Datei? Wo kann ich diese finden?

Kann mir hier einer den unterschied erklären?

Wie erstelle ich einen einfachen cronjob der mir jede Stunde eine .sh Datei ausführt?

Hab irgendwie gerade einen hänger.

JuergenPB

Re: Cronjob

Beitrag von JuergenPB » 12.11.2014 16:55:29

Wenn Du
crontab -e

eingibst wird geschaut ob es eine crontab für root gibt. Gibt es sie nicht, steht da:
no crontab for root - using an empty one

dann wird gefragt, welchen Editor Du benutzen willst
und es wird, wenn es noch keine gibt, eine Datei
/tmp/crontab...../crontab

angelegt, die Du dann ändern kannst. Wenn Du den Editor verläßt wird die Datei automatisch installiert.

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Cronjob

Beitrag von Cae » 12.11.2014 16:58:39

Benutzer-spezifische Crontabs, welche per crontab -e angelegt wurden, landen unter /var/spool/cron/crontabs/*. Der wesentliche Unterschied zu /etc/cron*/* bzw. /etc/crontab besteht darin, dass bei benutzerspezifischen Tabs schon klar ist, unter welchem Benutzer sie laufen. Bei den Tabs in /etc/ muss nach der Zeit-Spezifikation der Benutzername folgen und danach der Befehl.

Vgl.

Code: Alles auswählen

# cat /etc/crontab
10 * * * * root date | mail -s 'es ist zehn nach' root
# crontab -l
10 * * * * date | mail -s 'es ist zehn nach' root
# 
Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

DEBIO
Beiträge: 130
Registriert: 01.04.2007 16:48:38

Re: Cronjob

Beitrag von DEBIO » 13.11.2014 09:18:25

Dann müsste ein solcher Eintrag unter

Code: Alles auswählen

/etc/crontab
doch eigentlich funktionieren. Oder?

Code: Alles auswählen

1 * * * *        root   /home/mav/Schreibtisch/erstelleDatei.sh

DEBIO
Beiträge: 130
Registriert: 01.04.2007 16:48:38

Re: Cronjob

Beitrag von DEBIO » 13.11.2014 09:48:38

Ah jetzt hats geklappt.

Code: Alles auswählen

*/1 * * * * root /bin/sh /home/mav/Schreibtisch/erstelleDatei.sh
Musste dem ganzen noch sagen mit was er das Skript ausführen soll.



Habe ich das jetzt richtig verstanden das die

Code: Alles auswählen

 /etc/crontab
für alle User gedacht ist? Hier kann ich unter jedem User Jobs anlegen und ausführen lassen?
Muss hier ein User angemeldet bleiben damit die Skripte ausgeführt werden? Wie unter Windows?

Wenn ich mittels

Code: Alles auswählen

crontab -e
neue Cronjobs erstelle, sind diese dann Userspezifisch?!

Kann ich mir als root alle Cronjobs anzeigen lassen die auf dem Server angelegt sind? Also User unabhängig?

Ein

Code: Alles auswählen

crontab -r 
löscht nur die cronjobs des angemeldeten users richtig?

Antworten