[gelöst] DS214+ Aufgabenplaner führt mein Skript nicht aus

Status
Für weitere Antworten geschlossen.

kesandal

Benutzer
Mitglied seit
07. Nov 2013
Beiträge
31
Punkte für Reaktionen
0
Punkte
6
Hallo zusammen,

ich habe ein PHP-Skript welches ich täglich um 2 Uhr Nachts ausführen lassen möchte.
Daher habe ich im DSM eine Aufgabe mit den entsprechenden Parametern erstellt.

Einstellungen
Code:
Vorgang: task_name
Benutzer: root
Benutzer- definiertes Skript: /volume1/web/srv/cron.sh

Test mit: Aufgabe markiert -> Klick auf "Ausführen"


mein .sh Skript
Code:
#! /bin/ash

echo "=========$(date)=========" >> bk.log
/usr/bin/php -f /volume1/web/srv/bk.php sync >> bk.log

um Berechtigungsprobleme auszuschließen, habe ich zum Testen einen chmod 777 durchgeführt.

Code:
nas> ls -l
-rwxrwxrwx    1 admin    users           99 Jan  7 12:50 bk.log
-rw-r--r--    1 admin    users         5343 Jan  7 12:26 bk.php
-rwxrwxrwx    1 admin    users          191 Jan  7 12:46 cron.sh

Problem
Das Script wird anscheinend nicht ausgeführt.
Wenn ich auf der Konsole ins Verzeichnichs wechsle und "ash cron.sh" ausführe, wird meine .log-Datei gefüllt.

Weiterer Test
Code:
nas> /tmp/synoschedtask --get

               ID: [4]
             Name: [srv1_backup]
            State: [enabled]
            Owner: [root]
             Type: [daily]
       Start date: [0/0/0]
         Run time: [2]:[0]
          Command: [/volume1/web/srv/cron.sh]
    Last Run Time: Wed Jan  7 12:49:42 2015
           Status: [Success]


Hat jemand von Euch noch eine Idee woran das liegen könnte?

Vielen Dank.
 

dil88

Benutzer
Contributor
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.642
Punkte für Reaktionen
2.050
Punkte
829
Probiere es noch einmal hiermit:

Rich (BBCode):
#!/bin/sh

/bin/echo "=========$(/bin/date)=========" >> /volume1/web/srv/bk.log
/usr/bin/php -f /volume1/web/srv/bk.php sync >> /volume1/web/srv/bk.log

Kurze Erklärung der wichtigsten Änderung: Der Aufgabenplaner führt Dein Skript in einem anderen Kontext aus - nicht in Deiner Usershell mit entsprechender .profile-Konfiguration etc. Es könnte sein, dass Deine Logdatei sogar geschrieben wurde, aber eben lokal in dem Kontext, in dem der Aufgabenplaner Skripte ausführt. Deshalb ist der vollqualifizierte Pfad essentiell.
 

stefan_lx

Benutzer
Mitglied seit
09. Okt 2009
Beiträge
2.766
Punkte für Reaktionen
74
Punkte
88
bei Ausführen aus dem Aufgabenplaner heraus muss noch ein sh vor das Skript...
Rich (BBCode):
sh /volume1/web/srv/cron.sh

Stefan
 

kesandal

Benutzer
Mitglied seit
07. Nov 2013
Beiträge
31
Punkte für Reaktionen
0
Punkte
6
Hallo nochmal,

die Kombination aus Euren beiden Antworten brachte die Lösung.

Nun funktioniert alles bestens.

Danke :)
 

dil88

Benutzer
Contributor
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.642
Punkte für Reaktionen
2.050
Punkte
829
Klasse. Was wäre die Welt ohne Teamwork. :)
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat