2017-04-06 11 views
0

Ich habe keine Cron.allow und habe eine leere Cron.deny-Datei.Kein Benutzer zurückgegeben, wenn Job mit Crontab

Meine crontab sieht aus wie folgt:

# .---------------- minute (0 - 59) 
# | .------------- hour (0 - 23) 
# | | .---------- day of month (1 - 31) 
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ... 
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat 
# | | | | | 
# * * * * * user-name command to be executed 

# test entry 
* * * * * echo `who am i` > /home/2125/RR_Dev_Code/ETL/crontab.test 

Aber dies wird den Benutzer auf die Testdatei nicht schreiben. Die Datei wird erstellt, was bedeutet, dass Cron für meinen Benutzer ausgelöst wird. Wenn ich eine who am i von CLI ausführen, wird ein gültiger Benutzer zurückgegeben.

Fehle ich hier etwas?

+0

Sind Sie versuchen, eine Liste der angemeldeten Benutzer zu erhalten, oder versuchen Sie, den Namen des Benutzers zu erhalten, der den Cron-Job laufen wird? Im letzteren Fall könnte der Befehl 'whoami' Ihren Zwecken besser dienen. – Quietust

+0

Eigentlich versuche ich den Befehl psql auszuführen. Aber ich bekomme weiterhin einen Fehler: /home/2125/RR_Dev_Code/loader.sh: Zeile 4: psql: Befehl nicht gefunden. Daher versuche ich zu sehen, welcher Benutzercron das Skript ausführt – Tammy

+1

Cron-Jobs erhalten nicht automatisch Ihre benutzerspezifischen Umgebungsvariablen - siehe http://stackoverflow.com/questions/2388087/how-to-get- cron-to-call-in-the-correct-Pfade für weitere Informationen. – Quietust

Antwort

0

Hier ist mein Vorschlag

hinzufügen ordnungsgemäße Protokollierung,

* * * * * echo `who am i` 1> /home/2125/RR_Dev_Code/ETL/crontab.test.out 2>/home/2125/RR_Dev_Code/ETL/crontab.test.err 

Dann den Inhalt der Dateien. Es wird Ihnen das genaue Problem mitteilen. (Und BTW, sollte es sein whoami nicht who am i)

+0

Der Befehl könnte durch Entfernen des Befehls echo und der backquotes vereinfacht werden. – pcjr

+0

Gemäß SO Regeln: Ich bin in der Lage, den Benutzer zu sehen. Das ursprüngliche Problem ist nicht in der Lage, psql Dienstprogramm für den Benutzer ausführen. Ich habe die Antwort akzeptiert, da ich das in dieser Frage nie gefragt habe. – Tammy

Verwandte Themen