Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Inkrementelles Backup ohne Archivbit und Änderungsdatum (Robocopy?)

Frage Sicherheit Backup

Mitglied: jknapp

jknapp (Level 1) - Jetzt verbinden

29.10.2013 um 10:05 Uhr, 2603 Aufrufe, 3 Kommentare

Hallo Zusammen,

vielleicht mal wieder ein unlösbares Thema:
Kann man entwerder:
-Robocopy dazu bewegen, wenn es eine Datei kopiert das Zugriffsdatum "hochzusetzen"
oder
-Robocopy dazu bewegen, dass Erstellungsdatum zu setzen beim kopieren UND
bei /maxage das jüngere aus Erstellung und Änderung zu werten? (in manchen Dokus steht das so, klappt aber bei mir nicht (Windows 8.1)


Hintergrund:
Ich möchte ein einfaches inkrementelles Backup("Archiv Dateiversionierung"), aber
-das Archivbit kann nicht benutzt werden (Weil es parallel ein "großes Backup"gibt, dem ich nicht in die Quere kommen darf
-Das Änderungsdatum auch alleine auch nicht wirklich taugt, da ich nicht weiß, wann die "Offline-Kollegen" das letzte mal "synchronisiert" haben (ebenfalls per Robocopy) und daher eine beispielsweise am 15.09. geänderte Datei vielleicht erst 8 Tage später synchronisiert wird und daher erst nicht für das Backup zur Verfügung steht und dann schon älter ist als das vorgegebene /Maxage von 2 oder 3 Tagen.


Alternativ wäre auch sowas wie ein Datenbankbasiertes Backup möglich (verschiedene intelligentere Sync-Tool machen das ja im Pinzip, aber eben immer nur mit einem Zielordner, wo dann die neuen Dateien die alten überschreiben, was aber eben genau nicht gewünscht ist).

Danke für eure Tipps!

Gruß
Jochen

Mitglied: Joe2011
29.10.2013 um 10:50 Uhr
Moin Jochen,

für solche Fälle benutze ich "VersionBackup". Das sichert nur veränderte Dateien; jede Version wird aufbewahrt bis ich irgendwann wieder ein Vollbackup erstelle. So kann ich auch ältere Versionen ohne Probleme wieder herstellen. Die Versionsstände werden in einer DB gesichert; die Dateien in einem ZIP-Filesystem.

Gruß

Joe
Bitte warten ..
Mitglied: jknapp
29.10.2013 um 11:11 Uhr
Hallo Joe,

danke erstmal.
Sieht eigentlich nicht schlecht aus, aber zwei große Kontras:

-Die Entwicklung wird eingestellt, trotzdem wird das Produkt noch verkauft. Geld ausgeben, für eine Software ohne Support/Weiterentwicklung von einem kommerziellen Unternehmen? Da bin ich ja mit Open Source (jetzt mal Grundsätzlich) deutlich besser bedient. Da weiß ich wenigstens, dass ich im Zweifel alleine dasteht.

-Ich konnte jetzt auf Anhieb nicht erkennen, dass die Dateien als solche auf Basis einer DB als zu sichern erkannt werden. Also doch wieder Änderungsdatum oder Archivbit? (Womit mein Problem nicht gelöst wäre?)

Im Grund wäre ein Backup-Tool, dass auf Datenbankbasis neues/Änderungen erkennt so oder so genial,
aber das scheint es nicht zu geben? Ich hatte sogar schon überlegt sowas selbst in Python zu scripten,
kostet aber halt wieder viel Zeit und ich weiß nicht, ob ich mich traue, dass dann produktiv einzusetzen.


Gruß
Jochen
Bitte warten ..
Mitglied: jknapp
31.10.2013, aktualisiert um 10:30 Uhr
Ok noch für die Nachwelt:
Da es wohl keine Lösungen gibt, die meinen Vorstellungen entspricht habe ich mich nun doch entschlossen, das ganze auf Basis von Python(3) zu lösen. Folgendes hilfreiche Script fand ich unter:
http://dbudwm.wordpress.com/2012/08/21/verzeichnisse-vergleichen-mit-py ...
Verglichen wird auf Basis der MD5 Hashes, clevere Lösung, die ich noch etwas ausgebaut habe.

Wenns fertig ist werde ich die Endlösung nochmal posten.
Erweitern will ich folgendes:

-Damit das Quellverzeichnis des Vergleichs nicht irgendwo (Als Backup) vorgehalten werden muss, wird das Originalverzeichnis am ENDE des Scripts neu eingelesen und in eine JSON-Datei "gespeichert". Diese dient beim nächsten ausführen als Referenzwert, so dass das Verzeichnis jeweils mit sich selbst verglichen wird und differenten ausgegeben werden.

-Diese Differenzen werden dann nicht nur in eine Textdatei gespeichert ("Log") sondern dienen auch als Pfad/Ziel Angabe für einen "XCopy"-Befehl.

Aber jetzt erstmal der Ursprungscode (Python2):
01.
import hashlib 
02.
import os 
03.
import sys 
04.
  
05.
def md5checksum(filePath): 
06.
    with open(filePath, 'rb') as fi: 
07.
        h = hashlib.md5() 
08.
        while True: 
09.
            data = fi.read(1024) 
10.
            if not data: 
11.
                break 
12.
            h.update(data) 
13.
    return h.hexdigest() 
14.
          
15.
def scandir(dir): 
16.
    print "Scanning %s" % (dir,) 
17.
    fdata = {} 
18.
    for root, dirs, files in os.walk(dir): 
19.
        for name in files: 
20.
            fullpath = os.path.join(root, name) 
21.
            path = fullpath[len(dir):] 
22.
            fdata[path] = md5checksum(fullpath) 
23.
    print "Found: %i Files" % (len(fdata),) 
24.
    return fdata 
25.
  
26.
  
27.
def main(firstpath, secondpath): 
28.
    """ Give me two directories to compare """ 
29.
    first_data = scandir(firstpath) 
30.
    second_data = scandir(secondpath) 
31.
    for file, md5 in first_data.items(): 
32.
        if file not in second_data: 
33.
            print "%s only in %s" % (file, firstpath,) 
34.
        else: 
35.
            if second_data[file] == md5: 
36.
                del second_data[file] 
37.
            else: 
38.
                print "%s not the same" % (file,) 
39.
                del second_data[file] 
40.
    for file, md5 in second_data.items(): 
41.
        if file not in (first_data): 
42.
            print "%s only in %s" % (file, secondpath,) 
43.
        else: 
44.
            print "%s <-- You see this? Something gone WROOOOOONG!" % (file,) 
45.
  
46.
if __name__ == "__main__": 
47.
    main(sys.argv[1], sys.argv[2])
Bitte warten ..
Ähnliche Inhalte
Backup
gelöst Inkrementelles backup per Powershell (9)

Frage von SSamuel zum Thema Backup ...

Backup
gelöst Einzelne Ordner eines QNAP über VEEAM Backup u Replication sichern (8)

Frage von Hendrik2586 zum Thema Backup ...

Backup
Backup Exec Sicherung auf NAS mit lokalem User (8)

Frage von Fruehling2017 zum Thema Backup ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(34)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Webbrowser
Windows 7 unbeliebte Internetseite sperren (15)

Frage von Daoudi1973 zum Thema Webbrowser ...

ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (13)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...

LAN, WAN, Wireless
gelöst Suche Firmware Image für Cisco Aironet 1252 (10)

Frage von Herbrich19 zum Thema LAN, WAN, Wireless ...

Netzwerke
VLAN Verständnissproblem (9)

Frage von Dragan123 zum Thema Netzwerke ...