- Mitglied seit
- 28. Okt 2020
- Beiträge
- 15.028
- Punkte für Reaktionen
- 5.401
- Punkte
- 564
Ich hatte schon einmal hier eine Anleitung gepostet. Da aber die Config. Datei nach dem Hyper Backup Update (HyperBackup 4.1.0-3716) woanders liegt und ich auf den dortigen Beitrag keinen Einfluss mehr habe, erstelle ich hier einen neuen Thread für das Thema Hyper Backup mit autorun.
Das 3rd-Party-Paket mit dem Namen "autorun" prüft beim Einstecken eines Speichermediums, ob dort eine Datei mit dem Namen "autorun" liegt und wenn ja, werden darin hinterlegte Befehle ausgeführt. Eignet sich gut, um automatisiert einen HyperBackup-Job zu starten. Fertig eingerichtet ist der Zustand folgender: Man steckt die USB-Platte an, es dauert kurz, die DS piept und macht das Backup. Wenn fertig, piept sie erneut und wirft die Platte aus. Während des Vorgangs ist die Status-LED der DS orange, sodass man ganz klar sehen kann, wann das Backup noch läuft und wann es fertig ist.
Man kann auch das Script von @luddi in Post #8 nutzen. Da kann man den Hyper Backup Job per Namen starten und nicht per ID, wie nachfolgend.
Zuerst musst du die Job-ID deines Hyper Backup-Jobs herausfinden:
1.) per ssh auf der DS anmelden als root
2.) ID ermitteln
Der Pfad für die Config-Datei, in der die ID steht, ist folgender:
Der "beste Befehl", um Jobs aufzulisten, ist wohl dieser:
Wenn das nicht hinhaut:
Für Anfänger würde ich zum Durchsuchen folgende Option empfehlen:
Beispiel:
Mein Backup-Job, den ich automatisiert starten möchte, heißt schlicht "USB". In meiner Ausgabe oben finde ich die Zeile name="USB". Ich gehe ein Stück zurück nach oben, da die Task-ID immer als erstes da steht und da sehe ich [task_23]. Diese Zahl benötige ich, um die autorun-Datei zu erstellen.
3.) autorun Datei erstellen
In die autorun-Datei auf das USB-Medium muss folgender Inhalt:
Quelle Script
Diese Datei kannst du mit einem beliebigen Texteditor erstellen und speichern als "autorun" (OHNE .txt o.Ä.) direkt ins Stammverzeichnis des USB-Mediums.
Achte aber darauf, dass keine Windows-Zeilenumbrüche in der Datei sind. Am besten die Datei mit dem Texteditor des DSM erstellen (kann im Paket-Zentrum installiert werden).
Nun musst du natürlich noch das autorun-Paket auf der DS installieren: GitHub
Unter DSM 7 ist nach der Installation noch folgendes Kommando per ssh als root abzusetzen:
Weitere Links:
Anleitung (veraltet, nicht alle Schritte sind notwendig)
Thread im Forum
Das 3rd-Party-Paket mit dem Namen "autorun" prüft beim Einstecken eines Speichermediums, ob dort eine Datei mit dem Namen "autorun" liegt und wenn ja, werden darin hinterlegte Befehle ausgeführt. Eignet sich gut, um automatisiert einen HyperBackup-Job zu starten. Fertig eingerichtet ist der Zustand folgender: Man steckt die USB-Platte an, es dauert kurz, die DS piept und macht das Backup. Wenn fertig, piept sie erneut und wirft die Platte aus. Während des Vorgangs ist die Status-LED der DS orange, sodass man ganz klar sehen kann, wann das Backup noch läuft und wann es fertig ist.
Man kann auch das Script von @luddi in Post #8 nutzen. Da kann man den Hyper Backup Job per Namen starten und nicht per ID, wie nachfolgend.
Zuerst musst du die Job-ID deines Hyper Backup-Jobs herausfinden:
1.) per ssh auf der DS anmelden als root
2.) ID ermitteln
Der Pfad für die Config-Datei, in der die ID steht, ist folgender:
/usr/syno/etc/packages/HyperBackup/synobackup.conf
(vor HyperBackup 4.1.0-3716 ist der Pfad /usr/syno/etc/synobackup.conf
).Der "beste Befehl", um Jobs aufzulisten, ist wohl dieser:
more /usr/syno/etc/packages/HyperBackup/synobackup.conf | egrep "task|name"
.Wenn das nicht hinhaut:
Für Anfänger würde ich zum Durchsuchen folgende Option empfehlen:
more
gefolgt vom Dateipfad eingeben. Wenn du viele Jobs hast, listet der Befehl nicht alle Zeilen auf, du musst immer wieder Enter drücken, um noch mehr aufgelistet zu bekommen. Du hälst die Augen offen nach deinem Job-Namen und merkst dir die dazugehörige Job-ID (nur die Zahl ist von Relevanz). Erfahrene User können die Datei natürlich auch mit nano
öffnen. Da besteht aber die Gefahr, dass man etwas löscht. Unwahrscheinlich, aber sie besteht.Beispiel:
Mein Backup-Job, den ich automatisiert starten möchte, heißt schlicht "USB". In meiner Ausgabe oben finde ich die Zeile name="USB". Ich gehe ein Stück zurück nach oben, da die Task-ID immer als erstes da steht und da sehe ich [task_23]. Diese Zahl benötige ich, um die autorun-Datei zu erstellen.
3.) autorun Datei erstellen
In die autorun-Datei auf das USB-Medium muss folgender Inhalt:
Bash:
#!/bin/bash
# Specify the Hyper Backup Task ID [task_?] from /usr/syno/etc/packages/HyperBackup/synobackup.conf
taskid=3
/var/packages/HyperBackup/target/bin/dsmbackup --backup "$taskid"
pid=$(ps aux | grep -v grep | grep -E "/var/packages/HyperBackup/target/bin/(img_backup|dsmbackup|synoimgbkptool|synolocalbkp|synonetbkp|updatebackup).+-k $taskid" | awk '{print $2}')
while ps -p $pid > /dev/null; do
sleep 60
done
exit ${?}
Quelle Script
Diese Datei kannst du mit einem beliebigen Texteditor erstellen und speichern als "autorun" (OHNE .txt o.Ä.) direkt ins Stammverzeichnis des USB-Mediums.
Achte aber darauf, dass keine Windows-Zeilenumbrüche in der Datei sind. Am besten die Datei mit dem Texteditor des DSM erstellen (kann im Paket-Zentrum installiert werden).
Nun musst du natürlich noch das autorun-Paket auf der DS installieren: GitHub
Unter DSM 7 ist nach der Installation noch folgendes Kommando per ssh als root abzusetzen:
cp /var/packages/autorun/conf/privilege.root /var/packages/autorun/conf/privilege
Weitere Links:
Anleitung (veraltet, nicht alle Schritte sind notwendig)
Thread im Forum
23-10-21
-Script, welches via Name statt ID auskommt verlinkt
23-08-26
-Übersichtlichkeit verbessert
23-089-02
-Script verbessert
-Script, welches via Name statt ID auskommt verlinkt
23-08-26
-Übersichtlichkeit verbessert
23-089-02
-Script verbessert
Zuletzt bearbeitet: