Skript im Aufgabenplaner wird nicht ausgeführt

ds4u

Benutzer
Mitglied seit
04. Nov 2015
Beiträge
21
Punkte für Reaktionen
4
Punkte
3
Ich habe im Forum schon Themen dazu gefunden, die mir leider nicht weiter geholfen haben. Vielleicht könnt ihr mir noch einen Ansatz liefern.

Im Aufgabenplaner habe ich einen Task (benutzerdefiniertes Skript) für "root" erstellt.

Bash:
/bin/sh /volume1/homes/user/CloudStation/Drive/Documents/IT/startDimplexBackup.sh

Diese Skript kann ich manuell auf der Shell ohne Probleme ausführen. Es funktioniert. Das Skript hat folgenden Inhalt.

Bash:
#!/bin/sh
datum=$(/bin/date)
echo "Start Synchronisation mit lftp: $datum">>/volume1/homes/user/CloudStation/Drive/Documents/IT/BackupDimplexDataLog.log
user="root"
pass="froot"
host="server.local"
sourcePath="/usr/local/root/flash/http/log"
targetPath="/volume1/homes/user/CloudStation/Drive/Documents/IT/BackupDimplexData"
/bin/lftp -u $user,$pass -e "mirror --verbose $sourcePath $targetPath; bye" $host  >>/volume1/homes/user/CloudStation/Drive/Documents/IT/BackupDimplexDataLog.log 2>&1

Die Rechte für das Shell-Skript sollten auch stimmen.
Code:
-rwxrwxrwx   1 user users    496 May 18 12:38 startDimplexBackup.sh

Weiß jemand wo ich die Log-Einträge für den Aufgabenplaner finde und warum ich das Skript nicht manuell aus dem Aufgabenplaner starten kann?

Vielen Dank!
 
Zuletzt bearbeitet:

peterhoffmann

Benutzer
Sehr erfahren
Mitglied seit
17. Dez 2014
Beiträge
5.555
Punkte für Reaktionen
1.394
Punkte
234
Du kannst dir im Aufgabenplaner das "Ergebnis" vom Script anzeigen lassen.

ergebnis.jpg
 
  • Like
Reaktionen: ds4u

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Geb dir /bin/env mal mit aus. Terminal Sitzung auf Aufgabenplaner Lauf haben nicht die gleiche Umgebung per se.

Mit loggen kannst ja auch selber im Script.
 
  • Like
Reaktionen: ds4u

ds4u

Benutzer
Mitglied seit
04. Nov 2015
Beiträge
21
Punkte für Reaktionen
4
Punkte
3
Vielen Dank für eure Antworten. Die Kombination aus allen Beiträgen hat mir neue Denkansätze gegeben und zur Lösung beigetragen. ;-)

  1. Der Tipp mit dem Ergebnis war gut. Leider war bei mir unter den Einstellungen ein falscher Pfad hinterlegt, wodurch das Ergebnis nicht sichtbar war. Ich habe die Option deaktiviert, so dass kein Ausgabeergebnis mehr in einer Datei gespeichert wird.
    1621337524576.png
  2. Anschließend konnte ich nach erneuter manueller Aufgabenausführung sehen, dass die Aufgabe noch läuft. Das hat mich dann doch gewundert. Daraufhin habe ich gemerkt, dass noch ein Prozess von lftp lief, der nicht richtig beendet wurde (aufgrund einer Änderung des Hosts). Dadurch konnte ich keine weiteren Instanzen parallel dieser Aufgabe starten. Als ich den Prozess beendet hatte, wurden alle meine folgenden manuell gestarteten Aufgaben sequenziell ausgeführt. Das waren sehr viele, die ich dann durch den Neustart der Cronjobs abgebrochen habe.
    Code:
    synoservice --restart synocrond
    synoservice --restart crond
  3. Anschließend lief die /bin/bash Variante ohne Probleme. Unter /bin/env konnte ich gut erkennen, welchen Shell-Interpreter er verwendet.

Vielen Dank noch mal an Euch!
 


 

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