DS209 backup aufgabe manuell starten (ohne DSM Oberfläche)

Status
Für weitere Antworten geschlossen.

deeess

Benutzer
Mitglied seit
07. Jan 2014
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hi,

ich hoffe ihr könnt mir helfen. Ich möchte eine angelegte automatisierte Sicherungsaufgabe darüberhinaus manuell von Windows aus starten.
Hierzu möchte ich aber nicht die DSM Oberfläche aufrufen müssen sondern "ONE-Klick (bzw. Doppelklick)" agieren. Ist dies möglich?
Vielen Dank im Voraus für eure Hilfe.


PS: Wenn ja...wie?
 

xabano

Benutzer
Mitglied seit
17. Aug 2008
Beiträge
411
Punkte für Reaktionen
0
Punkte
22
"ONE-Klick (bzw. Doppelklick)" - Befehle kann man von Windows mit plink und putty an die DS senden.

Dazu speichert man in putty ein Profil für die Anmeldung auf der DS (als User root). Im Windows erstellt man eine .bat - Datei mit folgendem Inhalt:
Rich (BBCode):
 plink -load Profilname -pw StrengGeheim PfadZumBefehlaufderDS

Den genauen Befehl inkl. Pfad für das Backup findest du auf der DS in der Datei /etc/crontab. Ein Doppelklick auf die .bat-Datei führt nun den Befehl auf der DS aus.
 
Zuletzt bearbeitet:

deeess

Benutzer
Mitglied seit
07. Jan 2014
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Vielen Dank schon einmal für die Antwort.
Habe nun folgendes exemplarisch probiert:
D:\putty\plink.exe -load "Diskstation" -l "Username" -pw sagichnicht /tmp/synoschedtask --run id=4

Es kommt keine Fehlermeldung, allerdings fertigt er nur das backup der Systemkonfiguration an. Die Dateien/Ordner werden nicht kopiert.

/tmp/synoschedtask --run id=4 habe ich der crontab entnommen.
 

xabano

Benutzer
Mitglied seit
17. Aug 2008
Beiträge
411
Punkte für Reaktionen
0
Punkte
22
Es kommt keine Fehlermeldung, allerdings fertigt er nur das backup der Systemkonfiguration an. Die Dateien/Ordner werden nicht kopiert.
/tmp/synoschedtask --run id=4 habe ich der crontab entnommen.
Dann hast du wahrscheinlich den falschen Crontab-Eintrag erwischt (Task Nr. 4 sichert offensichtlich die Systemkonfiguration). In der Datei /tmp/scheduled_tasks findet man die Details zu den einzelnen Task-Nr.
 

deeess

Benutzer
Mitglied seit
07. Jan 2014
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
dort steht zur test sicherungs task folgendes:
[4]
id=4
last work hour=12
can edit owner=0
can delete from ui=1
edit dialog=SYNO.SDS.TaskScheduler.EditDialog
type=weekly
action=#tree:leaf_usbbkp#
can edit from ui=1
week=0000001
app name=#backup:app_name#
name=test
can run app same time=0
owner=0
simple edit form=0
repeat hour=0
listable=1
app args=
state=enabled
can run task same time=0
start day=0
cmd=L3Vzci9zeW5vL2Jpbi9zeW5vbG9jYWxia3AgLWEgInRlc3Qi
run hour=12
edit form=
app=SYNO.SDS.BackupApp.LocalBackup
run min=0
start month=0
can edit name=0
start year=0
can run from ui=0


leider kann ich damit nun wirklich gar nichts anfangen, hmmm...
 

xabano

Benutzer
Mitglied seit
17. Aug 2008
Beiträge
411
Punkte für Reaktionen
0
Punkte
22
Du musst ja jedem (Backup-)Task, den du einrichtest einen Namen geben. Gemäss deinem Posting hat der Task Nr. 4 den Namen test (name=test). Nun musst du in deinem Befehl den Task verwenden, den du auch ausführen möchtest (gemäss Eintrag in der Crontab).
 

deeess

Benutzer
Mitglied seit
07. Jan 2014
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
danke, dass du am Ball bleibst:
in der crontab finden sich keine name der tasks. lediglich ihre id (zB. id=1, 2, usw.).
synoschedtask meldet mir bei fehlender id auch zurück, dass "id" mit einem Argument > 0 notwendig ist.
ein ausführung unter angabe des namens ist nicht möglich.
 

xabano

Benutzer
Mitglied seit
17. Aug 2008
Beiträge
411
Punkte für Reaktionen
0
Punkte
22
Genau darum weisst du aufgrund der crontab nicht, welchen Task du manuell starten willst. Da musst du eben in der Datei /tmp/scheduled_tasks nach dem Namen des Tasks suchen, den du starten willst. Wenn du den Namen gefunden hast findest du etwas weiter oben auch die Nummer des Tasks (in deinem Posting hat der Task mit dem Namen test die Nummer 4).
In der crontab kannst du nun ablesen, wie die DS diese Task-Nummer startet. Mit genau diesem Befehl kannst du den Task auch manuell starten.
 

deeess

Benutzer
Mitglied seit
07. Jan 2014
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
in der crontab steht nur: /tmp/synoschedtask --run id=4, und eben diesen eintrag verwende ich ja mit dem resultat, dass nur system conf gesichert wird.

crontab:
#minute hour mday month wday who command
22 1 * * 3,6 root /usr/syno/bin/synopkg chkupgradepkg
0 19 * * * root /tmp/synoschedtask --run id=1
5 19 * * * root /tmp/synoschedtask --run id=2
0 19 * * * root /tmp/synoschedtask --run id=3
0 12 * * 6 root /tmp/synoschedtask --run id=4
 

xabano

Benutzer
Mitglied seit
17. Aug 2008
Beiträge
411
Punkte für Reaktionen
0
Punkte
22
crontab:
#minute hour mday month wday who command
22 1 * * 3,6 root /usr/syno/bin/synopkg chkupgradepkg
0 19 * * * root /tmp/synoschedtask --run id=1
5 19 * * * root /tmp/synoschedtask --run id=2
0 19 * * * root /tmp/synoschedtask --run id=3
0 12 * * 6 root /tmp/synoschedtask --run id=4
Ich sehe hier vier Einträge in deinem crontab. Jede Zeile ist eine Aufgabe, die ausgeführt wird. Schau mal nach, was Task 1, 2 und 3 ausführen. Einer davon wird das machen, was du suchst (run id= ist die Task Nr.)
 

deeess

Benutzer
Mitglied seit
07. Jan 2014
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
ich besitze 4 eingerichtete tasks, id 1 bis 4.
 

deeess

Benutzer
Mitglied seit
07. Jan 2014
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Habe es nun hinbekommen. Der eigentliche Dateitransfer wird nicht über den Eintrag in der crontab, bzw. über den dort hinterlegten befehl synschedtask veranlasst. Er erfolgt über /usr/syno/bin/synolocalbkp. Dort wird auch der Name der task anwendbar.
 
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