Sie sind nicht angemeldet.

Anzeigen

**Wir werden in den kommenden Tagen einen Umzug auf einen neuen Server durchführen. Im Rahmen dieser Maßnahme wird das Forum ca. 1 Stunde nicht erreichbar sein.** nslu2-info.de ist ein privates Projekt von mir, welches jeden Monat aus eigener Tasche finanziert wird. Mit einer freiwilligen Spende wird der Erhalt und der weitere Ausbau dieses Forums unterstützt. Um mich beim Erhalt des Forums zu unterstützen, kannst Du entweder via Flattr oder Paypal spenden. Ich bedanke mich schon jetzt bei allen Unterstützern.

Lieber Besucher, herzlich willkommen bei: Die NSLU2 Community****wenns ums speichern und streamen geht****. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Donnerstag, 26. Oktober 2006, 11:37

Inkrementelles File-Backup

Hallo zusammen,

ich habe folgende Konfiguration:

1-mal WinXP Desktop
1-mal WinXP Notebook

- NSLU2 mit 2-mal HD (Port 1 = NTFS und Port 2 = EXT3)
- Unslinged auf Port 2
- (TwonkyMusic auf Port 2)
- (Noxon 2 Audio)

Nun möchte ich ein tägliches, automatisches, inkrementelles Backup von Platte 1 auf Platte 2 machen, ohne dass einer der beiden Rechner läuft.

Gibt es hierfür eine Lösung?

Vielen Dank.

Anzeigen

trapperjohn

Fortgeschrittener

Beiträge: 558

Wohnort: Bremen

Beruf: SW-Entwickler

  • Nachricht senden

2

Donnerstag, 26. Oktober 2006, 12:26

RSync und Cron, interessanter Artikel dazu:
http://www.mikerubel.org/computers/rsync_snapshots/
Gruß,
Flo

Anzeigen

Eiffel

Profi

Beiträge: 619

Beruf: SAP Anwendungsbetreuer

  • Nachricht senden

3

Donnerstag, 26. Oktober 2006, 12:27

erstell dir nen script in dem du die kopiervorgänge die du zZ von hand machst
rein schreibst
und plane es als cronjob ein

4

Freitag, 27. Oktober 2006, 13:48

Zitat von »Eiffel;19854«

erstell dir nen script in dem du die kopiervorgänge die du zZ von hand machst
rein schreibst
und plane es als cronjob ein


OK, Eiffel.
Hast Du einen Idiot-Guide?
Wie genau setzt man das auf?
"...Nun möchte ich ein tägliches, automatisches, inkrementelles Backup von Platte 1 auf Platte 2 machen..."

trapperjohn

Fortgeschrittener

Beiträge: 558

Wohnort: Bremen

Beruf: SW-Entwickler

  • Nachricht senden

5

Freitag, 27. Oktober 2006, 14:03

Steht doch oben im Link genauestens beschrieben! Vielleicht noch nicht copy+paste tauglich, aber doch so exakt beschrieben, dass man sich das Skript in 10min. selbst basteln kann?

Hier noch mal kurze Zusammenfassung:

Hiermit werden die inkrementellen Backups erstellt:

Quellcode

1
2
3
4
5
6
7
mv backup.3 backup.tmp
mv backup.2 backup.3
mv backup.1 backup.2
mv backup.0 backup.1
mv backup.tmp backup.0
cp -al backup.1/. backup.0
rsync -a --delete source_directory/ backup.0/


backup.xyz ist dabei ein Ordner, der jeweils ein Backup enthält. Der Trick dabei ist, dass jeder Ordner für sich aussieht wie ein volles Backup (man hat also immer die letzten 4 Backups), aber durch die Nutzung von Hardlinks jeweils nur der Speicherplatz des Inkrements zum Vorgänger in Anspruch genommen wird.

Das ganze jetzt noch an die eigene Umgebung anpassen, in ein Skript stecken und von cron täglich aufrufen lassen -> fertig!
Ein fertiges Skript, dass sich außerdem noch um den Schutz der Backups vor versehentlichem Zugriff kümmert, findet sich oben im Link!
Gruß,
Flo

6

Donnerstag, 9. November 2006, 11:59

Danke, trapperjohn.
Ich habe mal ein cat /etc/fstab gemacht, um die Laufwerksbezeichnungen herauszufinden (siehe JPEG-Anhang).
Wie muss denn nun der komplette Pfad zum zu sichernden Verzeichnis aufgebaut sein?
Bsp.: Laufwerk 1 = EXT3 => Directory DATEN
Laufwerk 2 = EXT3 => DATEN
Es sollen alle Dateien und Unterverzeichnisse des Laufwerks 1, Verzeichnis DATEN in das gleichnamige Verzeichnis des Laufwerks 2 gesichert werden (inkrementell + full).
Viele Grüße
»go4java« hat folgende Datei angehängt:
  • ScreenShot001.jpg (100,48 kB - 25 mal heruntergeladen - zuletzt: 12. März 2010, 22:58)
- Linksys NSLU2 (Slug) mit 266 MHz
- EXT3-formatierte IDE-Platten an Port 1 und 2
- Unslung auf Platte 2!

trapperjohn

Fortgeschrittener

Beiträge: 558

Wohnort: Bremen

Beruf: SW-Entwickler

  • Nachricht senden

7

Donnerstag, 9. November 2006, 12:48

Die Pfade heißen so, wie du sie in deinem System gemountet hast. Aus deinem Screenshot geht für mich nicht eindeutig hervor, welche Platten du genau meinst? SDB ist höchstwahrscheinlich die Platte, auf die das System ge-'unslingt' ist?
Und deine zweite Platte ist noch gar nicht gemountet?
Falls doch, gib mal einfach 'mount' ohne Parameter ein, um zu sehen, was wo eingebunden ist!
Gruß,
Flo

8

Donnerstag, 9. November 2006, 21:03

Hallo TrapperJohn,

im Anhang der Screenshot 'mount'...

Viele Grüße
- Linksys NSLU2 (Slug) mit 266 MHz
- EXT3-formatierte IDE-Platten an Port 1 und 2
- Unslung auf Platte 2!

9

Donnerstag, 9. November 2006, 21:08

...hier nochmals der Anhang als JPEG...
»go4java« hat folgende Datei angehängt:
  • ScreenShot_001.jpg (46,33 kB - 23 mal heruntergeladen - zuletzt: 17. Oktober 2009, 15:40)
- Linksys NSLU2 (Slug) mit 266 MHz
- EXT3-formatierte IDE-Platten an Port 1 und 2
- Unslung auf Platte 2!

trapperjohn

Fortgeschrittener

Beiträge: 558

Wohnort: Bremen

Beruf: SW-Entwickler

  • Nachricht senden

10

Donnerstag, 9. November 2006, 21:21

Ich weiß nicht, ob du es weißt, also mal von ganz vorne:

Das Backup Skript greift nicht direkt auf Gerätedateien (/dev/sdX bspw.) zu, sondern kennt nur Pfade. Dazu musst du deine NTFS Platte in das System einbinden (mounten) und danach ist sie Teil deines Dateisystems (bspw. /media/platte2 oder so...).

Ich hab leider kein Unslung zum überprüfen, also weiß ich nicht, wie das da gehandhabt wird. Wenn deine NTFS Platte angestöpselt ist, kannst du dann über das Netz auf diese Platte zugreifen? Eigentlich müsste sie dann irgendwo gemountet sein, aber deine 'mount' Ausgabe zeigt nichts dergleichen an .. ?

Willst du die Platte denn ständig an/abstöpseln oder bleibt sie an der NSLU?
Gruß,
Flo

11

Donnerstag, 9. November 2006, 21:29

Hallo,
ich habe beide Platten auf EXT3; die NTFS hat zwar auch funktioniert, wollte aber hier und da eine Authentifizierung...
Also, habe jetzt die beiden EXT3-Platten (160GB + 320GB), die an der Slug hängen und auch permanent dort laufen sollen (meine lokalen Speicher C:\ auf dem Win-System sollen eigentlich verschwinden). Auf der Slug wünsche ich mir ein IMAP-Mail-Server etc., nur so nebenbei...

Wie müsste also ein 'rsync' aussehen:

rsync -a source destination (was müsste ich genau unter source + dest. eintragen, als Bsp.)???


Zitat von »trapperjohn;20292«

Ich weiß nicht, ob du es weißt, also mal von ganz vorne:

Das Backup Skript greift nicht direkt auf Gerätedateien (/dev/sdX bspw.) zu, sondern kennt nur Pfade. Dazu musst du deine NTFS Platte in das System einbinden (mounten) und danach ist sie Teil deines Dateisystems (bspw. /media/platte2 oder so...).

Ich hab leider kein Unslung zum überprüfen, also weiß ich nicht, wie das da gehandhabt wird. Wenn deine NTFS Platte angestöpselt ist, kannst du dann über das Netz auf diese Platte zugreifen? Eigentlich müsste sie dann irgendwo gemountet sein, aber deine 'mount' Ausgabe zeigt nichts dergleichen an .. ?

Willst du die Platte denn ständig an/abstöpseln oder bleibt sie an der NSLU?
- Linksys NSLU2 (Slug) mit 266 MHz
- EXT3-formatierte IDE-Platten an Port 1 und 2
- Unslung auf Platte 2!

trapperjohn

Fortgeschrittener

Beiträge: 558

Wohnort: Bremen

Beruf: SW-Entwickler

  • Nachricht senden

12

Donnerstag, 9. November 2006, 21:31

Mach mal noch bitte 'df -h'
Gruß,
Flo

trapperjohn

Fortgeschrittener

Beiträge: 558

Wohnort: Bremen

Beruf: SW-Entwickler

  • Nachricht senden

13

Donnerstag, 9. November 2006, 21:36

Ich gehe mal davon aus, dass eine Platte (u.a.) unter /share/hdd/data und die andere unter /share/flash/data eingebunden sind.

Auf der Zielplatte (auf dem die Backups liegen sollen) erstellst du dann bspw. einen Ordner 'Backup' (also entweder /share/flash/data/Backup oder /share/hdd/data/Backup, je nachdem von wo nach wo du sichern möchtest).
Das andere data-Verzeichnis ist die Quelle.

Aber bevor du das auf deine ganze Platte loslässt, würde ich es erst einmal mit 2 "Versuchsverzeichnissen" ausprobieren!
Gruß,
Flo

14

Mittwoch, 15. November 2006, 10:02

Ich kann beide Platten 'sehen' und auch browsen, das Problem ist mehr die richtige Syntax für das 'rsync'-Kommando; wie muss ich das schreiben???

rsync <quelle> <ziel>
- Linksys NSLU2 (Slug) mit 266 MHz
- EXT3-formatierte IDE-Platten an Port 1 und 2
- Unslung auf Platte 2!

trapperjohn

Fortgeschrittener

Beiträge: 558

Wohnort: Bremen

Beruf: SW-Entwickler

  • Nachricht senden

15

Mittwoch, 15. November 2006, 13:12

Hmm .. war wohl nicht verständlich genug von mir.

Angenommen, deine Platte 1 befindet sich unter /share/hdd/data und deine 2te Platte unter /share/flash/data.
Für ein Backup von Platte 1 auf Platte 2 legst du auf Platte 2 das Verzeichnis Backup an: mkdir /share/flash/data/Backup

Ein Backup machst du dann mit
rsync -a --delete /share/hdd/data/ /share/flash/data/Backup/

Natürlich immer noch ohne Gewähr, dass die Verzeichnisse stimmen, da du dich bislang strikt geweigert hast, dazu ein Statement abzugeben ;)

Danach befindet sich in /share/flash/data/Backup eine Kopie deiner Platte 1. Beim nächsten Aufruf werden nur die Änderungen aktualisiert (--delete sorgt dann dafür, dass nicht mehr vorhandene Dateien im Ziel auch entfernt werden).
Gruß,
Flo

16

Donnerstag, 11. Januar 2007, 11:50

was muss ich installieren damit das rsync bei mir läuft. meine nslu kennt den befehl wohl noch nicht.


bash: rsync: command not found
habe die neue 6.8 Unslung drauf.
-------------
Gruß
master-o-d

PHP-Quelltext

1
echo "Hello World";

trapperjohn

Fortgeschrittener

Beiträge: 558

Wohnort: Bremen

Beruf: SW-Entwickler

  • Nachricht senden

17

Donnerstag, 11. Januar 2007, 12:35

Ich würde an deiner Stelle mal rsync installieren.....

ipkg kennst du?

Falls ich überheblich klinge und du das alles schon gemacht hast -- stimmt deine PATH Variable? Das rsync-Executable liegt höchstwahrscheinlich in /opt/bin
Gruß,
Flo

trapperjohn

Fortgeschrittener

Beiträge: 558

Wohnort: Bremen

Beruf: SW-Entwickler

  • Nachricht senden

18

Donnerstag, 11. Januar 2007, 12:38

In der Unslung Readme, die man gewissenhaft gelesen haben sollte, steht folgendes:

Zitat


If you make no further changes, your NSLU2 will continue to operate normally.
But to customize things, you'll be downloading packages and adding stuff to the
/unslung directory using diversion scripts.

http://www.nslu2-linux.org/wiki/Unslung/Packages
http://www.nslu2-linux.org/wiki/Unslung/DiversionScripts

(One of the first packages you should consider installing is the OpenSSH
package, which will provide you a secure and more usable replacement for the
standard telnet service on the NSLU2.)

Read the NOTES file (normally in /opt/doc/NOTES on your unslung NSLU2) to expand
the capabilities of your Unslung NSLU2!


Insbesondere der erste Link wird dir alles zu ipkg erzählen ...
Gruß,
Flo

19

Donnerstag, 11. Januar 2007, 14:55

danke für die Info, ipkg sacht mir schon was.

habe die installation nach dieser Beschreibung durchgeführt.:

http://forum.mindfactory.de/modem-netzwe…lu2-thread.html

werde mal ipkg install rsync ausprobieren

also das mit dem rsync klappt. nur eine Frage dazu rsync -a ..... das ist dann doch inkrementell oder? müsste der dann nicht nur die geänderten bzw. neuen Datei kopieren?? ich habe den eindruck es wird trotzdem jede Datei neu kopiert? kann das sein?

oder habe ich im syntax was vergessen?

rsync -a --delete /share ... /share ...
-------------
Gruß
master-o-d

PHP-Quelltext

1
echo "Hello World";

20

Freitag, 12. Januar 2007, 12:36

also es klappt inkrementell, aber nur, wenn man die datei, in der der rsync steht nicht nachträglich geändert wird.

also ich habe

einen rsync in die datei geschrieben diese ausgeführt und danach unter den vorhandenen Eintrag einen neuen geschrieben, nun wurde der alte eintrag wieder erneut ausgeführt und alles kopiert, hatte dann irgendwie alles 2 mal in dem Ornder bzw es wurde ein unter ordner mit den daten erstellt. Ich habe an dem ersten eintrag nix geändert!

kann es sein, das man sobalt das script ausgeführt worden ist es nicht mehr ändern darf, da sonst irgend nen log gelöscht wird in der irgendwas drinne steht, was für das inkrementell verantwortlich ist.

ich wüsst sonst nicht warum der nicht mehr syncronisiert, denn wenn ich die datei 2 mal ohne zwischendurch zu ändern ausführe klappt das einwandfrei mit der inkrementellen Datensicherung.

danke
-------------
Gruß
master-o-d

PHP-Quelltext

1
echo "Hello World";

Social Bookmarks