PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Sicherung mit Aufbewahrung gelöschter Dateien.



Mathew
15.08.16, 17:01
Hallo zusammen,

ich nutze lftp um täglich Daten vom Linux auf ein NAS zu sichern, dass klappt seit Jahren ohne Probleme und sehr zuverlässig. Eine Sicherung der gelöschten oder geänderten Dateien ist nicht notwendig.
Für eine andere Sache benötige ich aber eine Sicherung der geänderten Dateien. Somit sollte auf dem Ziel mehrere Versionen existieren wenn die Quelldatei geändert wurde.
Das löschen spielt erst mal keine Rolle, da ich das über Scripte einrichten kann, wäre natürlich super wenn das Programm auch die Anzahl der zu behaltenden Versionen verwalten könnte, aber kein muss.

Kennt jemand ein Programm in der Shell über FTP was sowas realisieren kann, also geänderte Dateien im Ziel beibehalten ?

Danke.

marce
15.08.16, 18:29
rsnapshot (und jedes andere vernünftige Backupprogramm), git, svn, ... - je nach Wunsch und Anforderung.

fork
15.08.16, 18:40
Im Allgemeinen hat man Sicherungssätze, die den jeweiligen zeitlichen Stand widerspiegeln. Was danach gelöscht oder verändert wurde verändert den Sicherungssatz im Nachhinein nicht mehr.

So wie ich Dich verstehe, nutzt Du derzeit ein FTP Programm (lftp) um Dateien mit einem einzigen Ziel zu synchronisieren. D. h. Du nutzt nur einen einzigen Sicherungssatz, der immer wieder überschrieben wird.

rsnapshot und backuppc sind auch meine bevorzugten Programme, wenn es um Backup geht. Die sichern jedoch über rsync bzw. ssh und nicht über ftp. Ein gutes Backupprogramm mit FTP als Ziel kenne ich jetzt nicht. Falls keiner hier einen Rat hat, könntest Du Dein NAS-FTP noch via FTPFS ins Dateisystem einbinden und dann rsnapshot verwenden. (Über diese Lösung rümpfe ich jedoch die Nase, da ich rsnapshot lieber auf einem Linux-Server habe, der sich die Backups selbst holt und platzsparend über hardlinks die Sicherung ablegt). FTPFS ist da jetzt auch nicht so mein Favorit.

nopes
15.08.16, 21:26
So meiner Erfahrung nach, sind die fuse Teile (also zB FTPFS und SFTPFS) nicht wirklich für "Sicherungen" geeignet, wenn man selber drauf schaut ok, aber nichts für automatisierte Dinge die im Hintergrund laufen (was "Sicherungen" aber idR sollen), jedenfalls zu viel Fehler/Momente die ein remount notwendig machten, für mich sind die raus, bzw. rsync und co sind da deutlich einfacher in der Handhabung und schlagen fuse an dieser Stelle.

Am Ende empfehle ich dir dafür ein VCS (https://en.wikipedia.org/wiki/Version_control), wobei eigentlich genauer gesagt GIT, einen guten Einstieg findest du zB hier (https://git-scm.com/book/en/v2/Getting-Started-Installing-Git). Das schöne bei GIT ist, du kannst es erstmal in aller Ruhe auf deinem Rechner probieren, da GIT dezentral aufgebaut ist, braucht es nicht zwingend mit anderen Rechnern zu reden. Also kannst du all die spannenden Sachen - wie Stelle ich einen älteren Stand wieder her, wie nehme ich Dateien in die Versionskontrolle auf, wie schaue ich mir die Historie an, wie finde sucht man in der Historie usw - klären. Kommst du dann damit zu recht, richtest du den zweiten Rechner als Backup ein, dann macht auch ein zentraler "GIT Server" sinn (zB gitolite oder gitlab). Das tolle dabei ist dann, dass das mit lokalen immer noch geht, du kannst also erstmal auf deinen Rechner arbeiten und dann zum Zeitpunkt x, alles an den zentralen "GIT-Server" übergeben (praktisch das Backup machen) und genau das können einige VCSs so nicht (zB cvs und svn sind zB immer auf einen zentralen Server angewiesen).


Falls du nicht schon jetzt zu verwirrt bist ;)
So oder so, willst du für sowas eine Versionskontrolle haben, ob nun im Backup, oder einer dafür erstellte Anwendung ist eher egal, wobei ich sagen kann, dass ich inzwischen relativ häufig einen GIT-Server wechsel hatte, also zB von gitolite nach gitlab, von Server a zu Server b etc etc, bei keinem davon gab es größere Probleme, der schlimmste Schritt war der von SVN zu GIT, dabei mussten die Versionen erhalten bleiben und jetzt mach das mal mit einem "Backup" :)

Dann noch am Rande bemerkt, SSH-Tunnel drum und plötzlich ist auch FTP wieder sicher, solle jetzt keine Ausrede sein, aber viele Backups liefen früher ja über FTP und die kann man idR gut mit einem Tunnel sichern. Nutz nur auch nichts, wenn der eigentliche "Eingang" unsicher ist.


Noch mal zum wesentlichen -> https://en.wikipedia.org/wiki/Version_control

Mathew
16.08.16, 00:10
Hallo zusammen,

danke an Euch drei für die hilfreichen Antworten. Die Empfehlungen basieren ja eher Richtung rsync, daher habe ich mir das genauer angeschaut. Ich binde den NAS mit nfs ein und nutze rsync mit backup-dir in einem extra Ordner. Das ganze klappt wunderbar und ist auch noch sau schnell. Im backup-dir Ordner habe ich dann die gelöschten Dateien von der Quelle und eine Vorversion bei einer veränderten Datei. Das ist völlig ausreichend.

Teste gerade 12 TB in 2 Millionen Dateien und sieht bisher ganz gut aus.

Nach dem rsync Aufruf noch ein find zum löschen des backup-dir (älter 14 Tage) und alles fertig.

Also Dankääää...

fork
16.08.16, 00:58
Ich muss ja sagen, dass das Thema Datensicherung unter Linux ja noch lange nicht mit annähernd Lösungen gesegnet ist. Rsnapshot und BackupPC sind gute Stücke von Software. Doch gibt es da vieles was man sich noch wünschen würde(GUI/Konfiguration/...) und ein paar "Bugs" gibt es da leider auch noch. Mit Bugs in Anführungszeichen meine ich vor allem diese Nerverei bei BackupPC, dass die Komplettwiederherstellung einer Vollsicherung nicht fertig wird, wenn ich die über's Webinterface klicke. Ich muss immer über die Konsolentools gehen. Liegt wahrscheinlich an der Grösse meines Pools und daran, dass die Platten wohl immer am glühen sind. Für schnelle Klick-Klick Wiederherstellungen ist BackupPC aber super. Die Web-1.0-UI ist auch ohne IT-Studium von den Minions nutzbar.

Problematisch bei den rsync-basierenden Systemen ist die gigantische Fülle von Dateien, die sich auf einem Backupserver ansammeln. Das regelmässige Poolhashing (zur Deduplikation) von BackupPC mit z. B. über 50-100 Mio Dateien ist extrem aufwändig. Gerade auf Mailservern mit vielen MailDir-Mailboxen ist das ziehmlich übel(Möglicher Threadfork zu Mailbox-Speicherformaten :) ).

git als Backupwerkzeug zu verwenden ist für mich noch neu und ungewohnt. Werde mir wahrscheinlich irgendwann demnächst mal bup (http://bup.github.io) anschauen. Das basiert auf git und speichert seinen Kram wohl auch irgendwie in Form von gleich grossen Blöcken. Bin mir aber nicht sicher. Liest sich auf jeden Fall gut.

nopes
16.08.16, 01:03
Schau dir mal flex backup (http://www.edwinh.org/flexbackup/) an, ist zwar ein echter Dino, aber das muss ja nicht direkt was schlechtes sein - und ganz ehrlich ist nicht so schwer zu verstehen was da getrieben wird, anpassen/portieren ist also recht einfach drin und ich glaube ist recht nah an dem dran was du willst; wobei ich ich ja immer noch meine, dass du am Ende ein VCS willst, aber zieh ruhig erstmal den rsync Pfad durch, kann auf keinen Fallen schaden ;)

[edit]git als Backup - ja man muss da oft umdenken, dieses ganze SAS&Co ändern halt doch ein paar Grundlagen - aber keine sorge, auch der zentrale Server muss ja gesichert werden ;) jedenfalls, klappt und ziemlich gut, wie ich dann doch irgendwie zu geben muss (drauf einlassen halt ;))...

atomical
16.08.16, 22:03
auch erwähnenswert ... http://storebackup.org/