2016-08-04 56 views
1

Ich versuche, eine crontab in festgelegten Intervallen ausgeführt werden. Der Crontab-Job wurde als Teil meiner PHP-Slim-Anwendung auf Apache eingerichtet. Aus irgendeinem Grund ist es nicht fügen Sie einfach nicht den Auftrag an den crontab, so dass, wenn ich den Befehl ausführen:AUTH (Crontab Befehl nicht erlaubt) - Bitnami LAMP Stack Centos

crontab -u daemon -l 

Er sagt, ‚keine crontab für Daemon‘ (Daemon ist der Standard-Apache-Konto). Ich habe es geschafft, den Cronjob manuell mit einem anderen Account hinzuzufügen (und er wird ohne weitere Probleme ausgeführt), also ist es höchstwahrscheinlich ein Berechtigungsproblem. Was ist der beste Weg, um dies zu beheben, ohne auf Dinge wie chmod 777 zurückgreifen zu müssen (es wird ein Produktionsserver sein, also muss ich vorsichtig mit der Einstellung von Berechtigungen und dokumentieren sie)?

Antwort

1

Verwaltet, um die Antwort direkt nach dem Posten zu finden.

sah ich in der Protokolldatei für cron:

cat /var/log/cron 

Viele (daemon) AUTH (crontab command not allowed) Fehlermeldungen. Einige weitere googling führen mich zu /etc/cron/allow, die nicht existiert, aber /etc/cron.deny tut, und der Daemon-Account wurde dort aufgeführt. Problem gelöst.

0

Standardmäßig lassen wir den Benutzer daemon nicht Crontab-Jobs ausführen. Wenn dieser Benutzer crontab-Jobs ausführen soll, müssen Sie /etc/cron.deny ändern und den daemon-Benutzer von dort entfernen.

Ich hoffe, es hilft.