DS214+: Backup to externe USB Harddisk

Status
Für weitere Antworten geschlossen.

thomet

Benutzer
Mitglied seit
07. Mai 2014
Beiträge
2
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen

Im Einsatz ist eine DS214+ mit DSM 5.0-4482 Release.

Möchte mit der C (Copy Taste) auf der Frontseite ein Backup der Daten auf dem Synology NAS auf eine externe USB Disk erstellen.
Geht das wirklich nicht ? Im Handbuch resp. im Web ist immer nur die Rede dass die Daten von einer ext. USB Disk auf das NAS mit der C-Taste kopiert werden können ... das muss doch auch in die andere Richtung gehen!

Oder habe ich etwas übersehen ... wie muss ich das sonst anstellen.

Ein Backup via DSM auf die USB Disk konnte problemlos erstellt werden, ich möchte aber die c-Taste verwenden ohne dass ich das am PC im DSM starten muss.
Bei einem QNAP Nas hat das problemlos funktioniert...das sollte doch auch bei Synolgy möglich sein.

Danke im Voraus für ein Feedback.

Gruss
Stefan
 
Zuletzt bearbeitet:

dil88

Benutzer
Contributor
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.665
Punkte für Reaktionen
2.071
Punkte
829
Deine eigentliche Frage kann ich Dir nicht beantworten. Aber ich würde die als (meiner Meinung nach noch bessere) Alternative das Paket autorun vorschlagen. Damit wird das Backup einfach durch Anstecken der USB-Platte ausgelöst. Nach Beendigung des Backups, wirft autorun die Platte automatisch aus.
 

fraubi

Benutzer
Mitglied seit
25. Nov 2011
Beiträge
605
Punkte für Reaktionen
0
Punkte
42
Das geht nur mittels Skript und kleinen Eingriffen ins System. Hab ich auch so am laufen. Ist eben die Frage, wie weit man bereit ist, händisch ins System einzugreifen und wie fit man mit rsync etc. ist.

Wenn man es mit vorhandenen Bordmitteln realisieren will, geht es nicht.

Gruss
Fraubi
 

m0useP4d

Benutzer
Mitglied seit
08. Okt 2012
Beiträge
223
Punkte für Reaktionen
4
Punkte
24
Du kannst also Backup über den Copy Button anschmeißen?
Würde mich sehr freuen, wenn Du Deine Lösung hier postet. Die Idee finde ich sehr super...
 

fraubi

Benutzer
Mitglied seit
25. Nov 2011
Beiträge
605
Punkte für Reaktionen
0
Punkte
42
Moin,

natürlich gebe ich meine zusammengesuchten Erkenntnisse hier gerne wieder.

Ich bin allerdings kein Linux-Freak und habe mir die Infos irgendwie zusammengesucht. Es kann also sein, dass es wesentlich einfachere Wege gibt, die Funktion des Copy-Buttons zum Kopieren vom NAS auf ein angeschlossenes externes USB-Gerät zu modifizieren. Alle Infos hier sind also ohne Gewähr, wenn Du mit diesem Eingriff Dein NAS, die Garantie oder Deine Daten beschädigst, ist das Dein Problem. Aber keine Bange, ich habs auch hinbekommen, also kann es nicht so schwer sein.

Voraussetzung für die erfolgreiche Umsetzung ist allerdings, dass Grundkenntnisse im Umgang mit der Befehlszeilenebene, mit Linux, mit SSH, WinSCP, RSYNC und ggf. Putty vorhanden sind.

1.) Was wird benötigt:
- auf dem NAS muss der SSH-Dienst aktiviert sein
- auf dem NAS muss unter "externe Geräte" im Bereich USB-COPY ein Zielpfad angegeben und die USB-COPY-Funktion muss dort auch aktiviert sein
- auf Deinem Rechner sollte das Programm WinSCP (http://www.chip.de/downloads/WinSCP_13007380.html) installiert sein
- als Editor für eine eigene Skriptdatei empfehle ich den Crimson Editor (http://www.heise.de/download/crimson-editor-1124525.html)

2.) Was passiert eigentlich, wenn man den USB-COPY-Button am NAS drückt ?
Der USB-COPY-Button am NAS ist nur dann aktiv, wenn ein USB-Gerät (Festplatte, USB-Stick) am VORDEREN (!!!!!!!) USB-Anschluss im NAS eingesteckt ist. Drückt man bei eingestecktem USB-Gerät den USB-COPY-Button, dann wird auf dem NAS im Ordner /usr/syno/bin die Datei "synousbcopy" ausgeführt.

Damit wir also die Funktion des USB-COPY-Buttons beeinflussen können, müssen wir genau diese Datei (synousbcopy) für unsere Zwecke verändern.

3.) Ändern der Datei 'synousbcopy'
Dazu verbinden wir uns mit dem o.g. Programm WinSCP mit dem Benutzer 'root' und dem ADMIN-Passwort des NAS mit dem NAS und wechseln in das Verzeichnis /usr/syno/bin
Dort suchen wir die Datei 'synousbcopy' und benennen diese mit F2 um (z.B. in 'synousbcopy_'). Somit können wir später, falls es erforderlich ist, die alte Datei einfach wieder herstellen, indem wir sie wieder in 'synousbcopy' zurückbenennen.

Jetzt müssen wir eine neue eigene Datei mit dem Namen 'synousbcopy' erstellen und diese anschließend auf das NAS kopieren und mit entsprechenden Rechten versehen.

Um die Datei anzulegen starten wir den Crimson-Editor und aktivieren dort unter TOOLS --> PREFERENCES --> FILE den Punkt "Save files in Unix Format" und "Save remote files in UNIX format".

Um eine neue Datei anzulegen klicken wir im Crimson-Editor auf FILE --> NEW und tragen folgende Befehlszeilen ein

Rich (BBCode):
#!/bin/sh
#führt nach Drücken der USB-COPY-Taste das angegebene Skript aus
sh /volume1/Public/sicherungsskript.sh

Danach unter dem Namen 'synousbcopy' (ohne ' und ohne Dateiendung) am besten erstmal direkt auf Laufwerk C: speichern.

4.) Kopieren der eigenen 'synousbcopy' auf das NAS und setzen der Dateirechte
Anschließend verbinden wir uns wieder mittels WinSCP mit dem NAS und kopieren die neu erstellte Datei 'synousbcopy' von Laufwerk C auf das NAS in den Ordner /usr/syno/bin.

Danach müssen der Datei noch entsprechende Rechte zuweisen. Dazu diese einfach in WinSCP markieren und F9 drücken. In den dann angezeigten Eigenschaften der Datei als Gruppe und Eigentümer 'root' auswählen und weiter unten unter Oktal 0755 eintragen. Dann mit ok bestätigen.

Wenn man nun ein USB-Gerät am VORDEREN (!!!!) USB-Anschluss anschließt und den USB-COPY-Button drückt wird also zukünftig auf dem NAS das Skript mit dem Namen 'sicherungsskript.sh' im Ordner 'Public' ausgeführt. In dieses Skript können wir unsere eigenen Befehle für das Backup schreiben und daher auch die Kopierrichtung (vom NAS auf einen externen USB-Datenträger) beeinflussen.

Testweise legen wir einfach über den Crimson-Editor mal eine Datei mit folgendem Inhalt an:

Rich (BBCode):
#!/bin/sh
# 3mal langer Piepton #
echo 3 >/dev/ttyS1
exit 0

Diese Datei speichern wir unter den Namen 'sicherungsskript.sh' (wieder ohne ', aber diesmal mit der Dateiendung .sh) im Ordner Public auf dem NAS. WICHTIG : GROSS- UND KLEINSCHREIBUNG BEIM DATEINAMEN BEACHTEN. IN DIESEM FALL ALLES KLEIN SCHREIBEN !!!!

Drückt man nun bei angeschlossenem USB-Gerät am VORDEREN (!!!!) USB-Anschluss die USB-COPY-Taste, dann sollte das NAS 3x einen langen Piepton ausgeben.

Ich hoffe, dass bis hierher erstmal halbwegs verständlich rüberkommt, wie man das Verhalten des USB-COPY-Buttons beeinflussen kann. Allerdings ist die Änderung in der Datei 'synousbcopy' nach einem Firmwareupdate des NAS wieder weg und man muss die Änderung erneut durchführen.

Wie nun ein eigenes Sicherungsskript inhaltlich auszusehen hat, das hängt eben davon ab, was man wie sichern will, und natürlich davon, wie weit die Linux-Kenntnisse reichen.

Hier mal mein zusammengebasteltes Sicherungsskript, .......es kopiert Daten vom NAS auf eine externe USB-Festplatte und verschickt anschließend eine Statusmail. Infos dazu, was für eine Statusmail benötigt wird, findest du unter

http://www.synology-forum.de/showth...t-ohne-IPKG-und-Nail&highlight=statusmail.php

Gruß
Fraubi
Rich (BBCode):
#!/bin/sh
#------------------------------------------------------------------------------------------------------------------------------------------------------------------------
# Das Skript führt eine Sicherung des Ordners JAHRESARCHIVE auf einen angeschlossenen USB-Datenträger durch.
# Vor dem Start wird der Pfad des USB-Datenträgers ermittelt, indem versucht wird, eine Datei auf den Datenträger zu schreiben.
# Sollte dieses nicht möglich sein, bzw. sollte kein USB-Datenträger vorhanden sein, bricht die Sicherung ab und es wird eine Fehlermail ausgelöst.
# Nach jeder Ausführung des Skripts wird eine Mail generiert. Dazu muss im Ordner /VOLUME1/PUBLIC auf dem NAS die Datei STATUSMAIL.PHP vorhanden sein.
#
# Stand : 05/2014 - Version 1.1
#------------------------------------------------------------------------------------------------------------------------------------------------------------------------

### Bitte hier den Pfad zu statusmail.php anpassen
script_path=/volume1/Public/statusmail.php

### Prüfung als welches Laufwerk der USB-Datenträger gemountet ist. Es wird versucht, eine Datei zu schreiben. Ist dieses erfolgreich, so
### wird als Rückgabewert die 0 ausgeben, die in der Variablen $? steht. Damit steht fest, dass das Verzeichnis/Laufwerk vorhanden ist
pfad=5
hostname=`hostname -s`
touch /volumeUSB1/usbshare1-2/ds3612extusb.txt   
if [ $? -eq 0 ]; then
   rm /volumeUSB1/usbshare1-2/ds3612extusb.txt
   pfad="/volumeUSB1/usbshare1-2"
fi

touch /volumeUSB2/usbshare1-2/ds3612extusb.txt   
if [ $? -eq 0 ]; then
   rm /volumeUSB2/usbshare1-2/ds3612extusb.txt
   pfad="/volumeUSB2/usbshare1-2"
fi

touch /volumeUSB3/usbshare1-2/ds3612extusb.txt   
if [ $? -eq 0 ]; then
   rm /volumeUSB3/usbshare1-2/ds3612extusb.txt
   pfad="/volumeUSB3/usbshare1-2"
fi

touch /volumeUSB4/usbshare1-2/ds3612extusb.txt   
if [ $? -eq 0 ]; then
   rm /volumeUSB4/usbshare1-2/ds3612extusb.txt
   pfad="/volumeUSB4/usbshare1-2"
fi

#------------------------------------------------------------------------------------------------------------------------------------------------
#erstellt eine Fehlermeldung, wenn kein Laufwerk vorhanden ist
if [ $pfad -eq 5 ]; then
### Mail options
betreff="---> ACHTUNG / INFO VON $hostname - Backup am $datum um $zeit Uhr auf externe USB-Festplatte fehlgeschlagen !!!!! <---"
### Nachricht
nachricht="
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+         Daten konnten nicht auf die externe Festplatte kopiert werden.           +
+         Es ist kein USB-Datenträger an die $hostname angeschlossen                  +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
"

### Send Mail
php "${script_path}" "$betreff" "$nachricht"  
exit 0
fi

#------------------------------------------------------------------------------------------------------------------------------------------------
#Das Skript kopiert Daten aus dem Verzeichnis JAHRESARCHIVE auf die externe USB-Festplatte

### Commands before
datum=`date +"%d.%m.%y`
startzeit=$(date +"%s")
size_vol_volumeusbalt=`df -h | grep $pfad | awk '{print "Freier Speicher vor der Aktualisierung  : " $4  }'`

#Rsync-Befehle
#-------------------------------------------------------------------------------------------
mkdir Jahresarchive
rsync -av --ignore-errors --delete-excluded --exclude=@eaDir /volume1/Jahresarchive/ $pfad/Jahresarchive
#-------------------------------------------------------------------------------------------

### Commands after
endzeit=$(date +"%s")
diff=$(($endzeit-$startzeit))
laufzeit="$((diff/60)) Minuten, $((diff%60)) Sekunden"
size_vol_volumeusb=`df -h | grep $pfad | awk '{print "Freier Speicher nach der Aktualisierung : " $4  }'`
verbrauch=`du -sh /$pfad/ | awk '{print "Die Daten auf dem Datenträger belegen insgesamt  : " $1  }'`
zeit=`date +"%H:%M`

### Mail options
betreff="---> INFO VON $hostname - Datensicherung am $datum um $zeit Uhr auf externe USB-Festplatte abgeschlossen <---"
### Nachricht
nachricht="
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+                Daten wurden auf externe USB-Festplatte kopiert.                  +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- $size_vol_volumeusbalt
- $size_vol_volumeusb
- $verbrauch
- Aktualisierungsdauer : $laufzeit
"

### Send Mail
php "${script_path}" "$betreff" "$nachricht" 

sleep 100
umount $pfad

exit 0
 
Zuletzt bearbeitet:

dil88

Benutzer
Contributor
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.665
Punkte für Reaktionen
2.071
Punkte
829
Hervorragend, danke Fraubi!
 

m0useP4d

Benutzer
Mitglied seit
08. Okt 2012
Beiträge
223
Punkte für Reaktionen
4
Punkte
24
Wow, besten Dank Fraubi! :cool:
Hut ab, für die sehr gut und ausführlich beschriebene Anleitung, werde ich dann am WE ausprobieren.
 
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