cronjob Berechtigung für bestimmten USer

C

conner

Mitglied
Moin!

Ich möchte einem User die Berechtigung erteilen auf dem Server Crobjobs auszuführen. Beim Versuch einen Cronjob zu starten kommt die Meldung
Keine Berechtigung.

Wie kann ich ihm diese Berechtigung per Konsole erteilen?

Gruß Conner
 
Hallo,

dazu fallen mir zwei Dinge ein:
  1. ein User *darf* eigentlich Cronjobs ausführen, die Crontab sieht User-Einträge vor. Wenn er sie selbst in seinem Kontext erstellt, müßte er sie auch starten können.
  2. Wenn es was kritisches ist, das sonst nur root darf: Ich würde ein kurzes Shellscript schreiben, das den Befehl ausführt, aber root gehört. Dieses Script dem User erlauben (ohne Paßwort) - das kann er dann bei sich in die crontab eintragen. Damit vermeidest du eine generelle Erlaubnis eines root-Befehles, wenn es z.B. reicht, diesen nur mit bestimmten Parametern zu erlauben (z.B. auf ein Verzeichnis beschränkt - je nachdem, was es überhaupt ist). Denn die Parameter kannst du fest in das Script schreiben, das sudo ihm erlaubt.
 
Cronjob mit 'crontab -e' mit dem entsprechenden User eintragen, fertig. Wenn dann noch irgendwelche Rechte-Probleme auftreten, liegt es an den Rechten des Cron-Scripts (nicht ausführbar für den User) oder an irgendwelchen Dingen, die nur root darf (Nutzung eines Ports <1024, kein Schreibzugriff auf Log-Datei o.ä.). Du müsstest also bitte genauer erklären, wie du den Cronjob einträgst, was die _genaue_ Fehlermeldung ist und was der Cronjob tun soll.
 
Moin!
crontab fehlte ein x zum ausführen für users. Habe ich gesetzt, geht.

Das script, was ausgeführt wird ist stats.pl, die dated eine Datenbank up. mit diesen Daten wird dann eine Website bestückt.

Wenn ich als Benutzer stats.pl ausführe, geht das auch. Die Website wird dann passend upgedated.

Wenn ich das ganze per cronjob mache, sagen wir alle 5min, sieht das so aus:

*/5 * * * * /folder1/folder2/stats.pl

das ding wird auch ausgeführt, ich sehe die Nachricht auf der Website, dass ein Update gefahren wurde - die Daten ändern sich aber nicht.

Wie kann ich mir die Bildschirmausgabe, die abläuft, wenn ich stats.pl zu Fuß starte, in eine Textdatei reinwerfen? ich würde gerne mal sehen, was tatsächlich passiert, wenn die Datei als Cronjob ausgeführt wird.

Danke für die Hilfe
Gruß Conner
 
Trag mal in deinen Crontab ein
Code:
MAILTO=deine@emailadresse.de
ein (Voraussetzung ist ein laufender SMTP-Server auf dem Rechner) oder leite den Output mittels
Code:
*/5 * * * * /folder1/folder2/stats.pl > /folder1/folder2/stats.log 2>&1
in eine Log-Datei um, so dass du schauen kannst, ob evtl. Fehlermeldungen vom Cronjob ausgegeben werden. Ansonsten landen die Fehlermeldungen der Cronjobs auch irgendwo in den Logs unter /var/log/.
 
Moin!

Danke, das mit der Umleitung funktioniert - da kommen Fehlermeldungen!
Da kann ich mit arbeiten!

Gruß Conner
 

Ähnliche Themen

UMASK - Berechtigungen für SFTP-Files

NAS-Drive Mount in Bash-Script über crontab

Samba 3.6.25 - OpenLDAP Setup

Keine grafische Oberfläche (Debian Installation)

SSH auf bestimmte IPs für bestimmte User

Zurück
Oben