Top-Themen

Aktuelle Themen (A bis Z)

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?)

Mitglied: jknapp

jknapp (Level 1) - Jetzt verbinden

29.10.2013 um 10:05 Uhr, 2994 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
Robocopy BackUp Inkrementell und Voll
Frage von AkroshBackup9 Kommentare

Hallo zusammen, ich habe mal wieder eine bescheidene Frage zu der ich auch bereits Google und div. Suchfunktionen befragt ...

Backup

Robocopy soll Archivbit nicht zurücksetzen

Frage von ReinhardSchwarzBackup9 Kommentare

Hallo, ich möchte mit Robocopy fortlaufend einen Sicherungsdatenbestand auf einen NAS-Server sichern. Dazu benutze ich Robocopy Quelle Ziel /MIR ...

Batch & Shell

Robocopy Backup Script

Tipp von kunert0345Batch & Shell9 Kommentare

Backupscript zum Erstellen monatlicher Backups und zur täglichen Aktualisierung der monatlichen Backups:

Backup

Backup mit xcopy oder robocopy

Frage von stefi1Backup1 Kommentar

Guten Tag zusammen Kann mir jemand die Befehlszeile in xcopy oder robocopy sagen für Backup der nur veränderten Dateien ...

Neue Wissensbeiträge
Backup

Veeam Agent für MS Windows - neue Version verfügbar (bedingt jedoch offenbar .NET Framework 4.6)

Information von VGem-e vor 15 StundenBackup

Moin Kollegen, einer unserer Server zeigte grad an, dass für o.g. Software ein Update verfügbar ist. Ob ein evtl. ...

Python

Sie meinen es ja nur gut - Microsoft hilft python-Entwicklern auf unnachahmliche Weise

Information von DerWoWusste vor 2 TagenPython2 Kommentare

Stellt Euch vor, Ihr nutzt python unter Windows 10 und skriptet damit regelmäßig Dinge. Nach dem Update auf Windows ...

Sicherheits-Tools

TrendMicro Worry-Free Business Security 10.0 SP1 steht in Englisch bereit mit Unterstützung für Windows 10 1903 (May Update)

Information von VGem-e vor 2 TagenSicherheits-Tools1 Kommentar

Moin Kollegen, Dann kommt wohl demnächst auch die deutschsprachige/europäische Version zur Auslieferung. Gruß VGem-e

Batch & Shell
PowerShell Konferenz - Videos online
Information von NetzwerkDude vor 3 TagenBatch & Shell

Abend, die Tage werden Videos der Talks von der diesjährigen EU Powershell Konferenz hochgeladen, sind einige Interessante dabei: MFG ...

Heiß diskutierte Inhalte
Google Android
Anbieter für Diensthandys
Frage von Pat.batGoogle Android24 Kommentare

Hallo zusammen, ich bin seit einiger Zeit zuständig für die Diensthandys bei uns in der Behörde. Eine Management Software ...

Windows Server
Windows Server 2016 einrichten
Frage von borjiaWindows Server20 Kommentare

Ich würde gerne einen Server einrichten, erstmal nur mit DNS und AD. Habe mich die letzten Wochen durch diverse ...

Exchange Server
Vorgehen um von Tobit auf Exchange zu wechseln
Frage von Martin1987Exchange Server17 Kommentare

Guten Abend Ich habe den Auftrag erhalten, unser Mail von David zu Outlook zu wechseln. Wie muss ich da ...

Microsoft Office
Office 365 eMail via Website verschicken
Frage von BiBeSoMicrosoft Office16 Kommentare

Hallo, kann man im Office 365 eMails anlegen welche zum versenden (smtp) für die Website funktionieren ? Muss man ...