Crontab nicht ausgeführt bash-Skript

Ich sehr sehr selten mit Linux und so don T haben keine Erfahrung mit bash-Skripte und cron-jobs.
Dies ist in der Tat mein Erster Versuch. Es ist also wahrscheinlich etwas, das wirklich einfach zu beheben.

Habe ich Folgendes:

/etc/cron.d/clear-mixtape-dir.sh
Berechtigungen: 644

#!/bin/bash
# Clears the /tmp/mixtape2 directory
rm -rf "/tmp/mixtape2/"*

Meine crontab Datei sieht so aus:

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

*/15 * * * * /etc/cron.d/clear-mixtape-dir.sh >/dev/null 2>&1

Ich versuche zu führen .sh-Skript alle 15 Minuten.

Alles, was ich gefunden habe, sagt, das sollte funktionieren, aber es funktioniert nicht.

Alles tut, wie eine Datei-Berechtigungen (auf Dateien in /tmp/mixtape2/) Sache in diesem Fall?
Oder vielleicht die Berechtigungen auf den tatsächlichen .sh script - vielleicht brauchen Sie die Einstellung für ausführbare Datei?

Jede Beratung geschätzt.

ändern Sie die Berechtigungen auf 777
Hinzufügen /bin/bash in Ihrer Linie: */15 * * * * /bin/bash /etc/cron.d/clear-mixtape-dir.sh >/dev/null 2>&1
Die Berechtigungen sollten so fast nie auf 777 gesetzt. In diesem Fall werden die Berechtigungen auf das script sollte 755 sein, und die Berechtigungen von /tmp/mixtape2/ erlauben müssen, schreiben die user läuft der cronjob.
bemerkte gordon, vielen Dank für die Erinnerung an die grausamen 777 , ich entschuldige mich
Besser noch, machen Sie die Berechtigungen 700 und stellen Sie sicher, der Besitzer ist root. Es sei denn, Sie wollen, dass es als ein anderer Benutzer ausgeführt -, dann ändern die Eigentumsverhältnisse entsprechend, und machen es immer noch 700, dann aktualisieren Sie Ihre cron definition führen Sie das Skript als Benutzer.

InformationsquelleAutor Barry Jarvis | 2013-04-25

Schreibe einen Kommentar