2017-04-06 3 views
0

Je n'ai pas cron.allow et j'ai un fichier cron.deny vide.Aucun utilisateur retourné lors de l'exécution d'un travail à l'aide de crontab

Mon crontab ressemble ci-dessous:

# .---------------- 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 

Mais, ce n'est pas en train d'écrire l'utilisateur dans le fichier de test. Le fichier est créé, ce qui signifie que cron est renvoyé pour mon utilisateur. Lorsque j'exécute un who am i à partir de CLI, il renvoie un utilisateur valide.

Ai-je raté quelque chose ici?

+0

Vous essayez d'obtenir une liste des utilisateurs connectés, ou vous essayez d'obtenir le nom de l'utilisateur qui dirige la tâche cron? Si ce dernier, la commande «whoami» pourrait mieux servir vos objectifs. – Quietust

+0

En fait, j'essaie d'exécuter la commande psql. Mais je continue d'obtenir une erreur: /home/2125/RR_Dev_Code/loader.sh: ligne 4: psql: commande introuvable. Par conséquent j'essaie de voir quel cron d'utilisateur prend en charge pour exécuter le script – Tammy

+1

Les travaux Cron n'obtiennent pas automatiquement vos variables d'environnement spécifiques à l'utilisateur - voir http://stackoverflow.com/questions/2388087/how-to-get- cron-to-call-in-the-correct-paths pour plus d'informations. – Quietust

Répondre

0

Voici ma suggestion

Ajouter correctement le logging,

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

voir ensuite le contenu des fichiers. Il vous dira le problème précis. (Et BTW, il devrait être whoami pas who am i)

+0

La commande pourrait être simplifiée en supprimant la commande echo et les backquotes. – pcjr

+0

Selon les règles de SO: Je suis capable de voir l'utilisateur. Le problème d'origine n'est pas capable d'exécuter l'utilitaire psql pour l'utilisateur. J'ai accepté la réponse car je ne l'ai jamais posée dans cette question. – Tammy