Skript im Aufgabenplaner ausführen

Status
Für weitere Antworten geschlossen.

Darkdevil

Benutzer
Mitglied seit
08. Feb 2013
Beiträge
507
Punkte für Reaktionen
1
Punkte
0
Ich möchte ein .sh Skript von der Synology ausführen lassen.
Das Skript liegt im Ordner: /volume1/@appstore/Craftbukkit/craftbukkit.sh

Wenn ich jetzt den Pfad wie oben genannt in den Aufgabenplaner eingebe und auf "ausführen" klicke, funktioniert es nicht.
Habe es auch schon mit sh /volume1/@appstore/Craftbukkit/craftbukkit.sh probiert. Leider hat das auch nicht geklappt.

Wenn ich das Skript aber übers Terminal aufrufe mit sh.craftbukkit.sh dann wird es sofort ausgeführt. Nur nützt es mir im Terminal, denn
sobald ich dieses schließe, wird auch das Skript beendet. Deswegen muss das Skript auf der Syno gestartet werden, damit ich den Rechner ausschalten kann :)
 

dil88

Benutzer
Contributor
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
29.885
Punkte für Reaktionen
1.171
Punkte
754
Zwei Dinge dazu:

  1. Du kannst ein Skript auf der Konsole mit dem Kommando nohup starten (also z.B. "nohup /volume1/@appstore/Craftbukkit/craftbukkit.sh" ohne Anführungsstriche - das sh vor dem Skript kannst Du Dir schenken). Dann sollte das Skript normalerweise auch dann weiterlaufen, wenn Du die Konsole schließt.
  2. Wenn Skripte in Deiner Konsolenumgebung funktionieren und aus einem Cronjob o.ä. heraus nicht, dann liegt das üblicherweise daran, dass Du Einstellungen in Deiner persönlichen Shellumgebung als vorhanden unterstellst, die nur dank der globalen /etc/profile Datei und Deiner lokalen ~/.profile so eingestellt sind. Du musst in Deinen Skripten entweder Dein .profile per "source /home/username/.profile" laden und/oder die nötigen Environmentvariablen zu Beginn Deines Skripts händisch erweitern/setzen und/oder Pfade komplett ausschreiben - z.B. die zu den genutzten Programmen, die man normalerweise dank der PATH-Environmentvariable weglässt.
 

Darkdevil

Benutzer
Mitglied seit
08. Feb 2013
Beiträge
507
Punkte für Reaktionen
1
Punkte
0
Super.
Vielen Lieben Dank.
Mit Nohup funktioniert das Skript auch.
Allerdings schreibt er in die Ausgabedatei lauter Zeilen mit "unbekannter Befehl oder Kommando" und das so oft in der Sekunde, dass sich diese Datei sehr stark aufbläht?
Im Skript gibt es eigentlich nur 1 Zeile die für Java bestimmt ist:

java -Xmx256M -Xms256M -jar craftbukkit.jar
 

dil88

Benutzer
Contributor
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
29.885
Punkte für Reaktionen
1.171
Punkte
754
Wie gesagt: Versuche einmal, alle Programme (z.B. java) und Dateien (z.B. craftbukkit.jar) in dem Skript mit ihren kompletten Pfaden zu versehen. Dann sollte es laufen.
 

dariusmk

Benutzer
Mitglied seit
16. Okt 2017
Beiträge
110
Punkte für Reaktionen
3
Punkte
18
Hallo,

das Thema ist zwar schon älter. Ich habe aber dasselbe Problem wie der Threadersteller:

Ich möchte ein Programm - den JDownloader - bei Bedarf über den Aufgabenplaner starten. Ich bin wie folgt vorgegangen:

- Im Aufgabenplaner "geplante Aufgabe" "benutzerdefiniertes Skript" geklickt
- als Benutzer "admin" gewählt
- den Haken bei "Aktiviert" rausgemacht (Ich möchte die Aufgabe bei Bedarf durch Klick auf "Ausführen" aktivieren
- Unter "Aufgabeneinstellungen" "Benutzerdefiniertes Skript" habe ich dann Folgendes eingegeben:

java -jar /volume1/@appstore/JDownloader/JDownloader.jar >/dev/null 2>/dev/null &

Vorstehendes sollte den jdownloader starten. Es passiert aber nichts. Wenn ich den Befehl direkt auf der Konsole eingebe, funktioniert es.

Was mache ich nur falsch?

VG
dariusmk
 

PsychoHH

Benutzer
Mitglied seit
03. Jul 2013
Beiträge
2.967
Punkte für Reaktionen
4
Punkte
78
Evtl. mal den kompletten Java Befehl angeben.
 
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