Backup Erstellen mit xcopy/robo copy?

illo47

Lt. Commander
Registriert
Mai 2011
Beiträge
1.110
Hallo,

Ich würde gerne ein Backup meiner Dateien machen ohne dazu spezielle Programme zu verwenden. Das ganze sollte dann automatisiert ablaufen. Ich hätte am liebsten die zwei Optionen:
1) Immer wenn ich eine externe Festplatte am PC anschließe, sollen die Dokumente darauf kopiert werden
2) Täglich um 9 Uhr sollen alle Dateien kopiert werden

Mit xcopy bekomme ich es hin, dass ich Dateien von einem Ort zum anderen kopiere. Jetzt fehlt mir im Prinzip noch die Automation dahinter, dass dies entweder bei Einstecken der Festplatte oder auch einfach nur täglich geschehen soll.

Habt ihr da Tipps für mich, oder nutzt bereits jemand hier etwas ähnliches?
 
Das Tägliche kannst du mit Windows Aufgabenplanung machen. Damit könnte man evtl. auch den Trigger setzen, das es beim anstöpseln passiert. Davon würde ich aber abraten und es lieber manuell anstoßen. sonst zerlegst du dir mit leichtsinnigkeit deine daten, wenn z.b. ein virus auf dem Rechner ist, der dann mit "gesichert" wird.
 
  • Gefällt mir
Reaktionen: pedder59 und alQamar
Das HDD Backup kannst du mit Veeam free lösen:
https://www.veeam.com/de/windows-endpoint-server-backup-free.html
Die kostenlose Version bietet 1 Job an, der kann so konfiguriert werden dass das Backup startet, sobald das Backup Medium (ext. HDD) eingelegt wird.
Täglichen Copyjob kannst du wie schon geschrieben mit der Aufgabenplanung realisieren, die immer zur gleichen zeit eine batch aufruft.
 
Ich würde Aomei Backuper empfehlen. In der Standard kostenfrei und kann mehrere Jobs planen, darunter auch Sync. So könnte man Backup und Sync alles aus einer Hand erledigen lassen und muss nicht über mehrere Ecken und verschiedene Sachen sich was basteln. Bei Interesse gibts bei Deskmodder auch die Prof Version für 1 Jahr gratis. Trigger und Zeitplan sind alles frei einstellbar. Anschauen lohnt sich.
 
Oder Personal Backup, siehe meine Sig. Die haben alles im Bauch und Du brauchst nicht umständlich mit Scripten oder Zeitplanung rumfummeln.
 
  • Gefällt mir
Reaktionen: Gullwoop
Ein Backup ist eine 1:1 Vollsicherung des jetzigen Bestands.

XCOPY und ROBOCOPY verändern aber eine Sicherung! Ja, das klingt blödsinnig, weil soll ja, aber…
Ein Backup soll erlauben Verluste und Irrtümer (innerhlab eines gewissen Zeitfesnters) korrigieren. Ersetze ich mit XCOPY /F/I/D/S/C/H/Y oder ROBOCOPY /MIR vollautomatisch meine Sicherung mit der eben verpfuschten Word-Datei war das ein vollautomatischer Schuss ins Knie.

Wenn also Backup dann an mehreren Orten und in mehreren Altern… …und auf nicht dauernd angeschlossene Datenträgen. Wenn ein Krypto-Trojaner durchkommt ist dieses Backup eben genau das was es sein soll.

CN8
 
  • Gefällt mir
Reaktionen: p0wnd
cumulonimbus8 schrieb:
vollautomatisch meine Sicherung mit der eben verpfuschten Word-Datei war das ein vollautomatischer Schuss ins Knie.

Man laesst halt einfach nicht per /MIR ueberschreiben und benutzt z.B. Ordner die das taegliche Datum wiederspiegeln.
Ich lass Robocopy einmal die Woche voll sichern, ueber die restlichen Tage nur das was veraendert wurde.
Geschrieben wird immer in neue Ordner aka "18-06-2020v" fuer die Vollsicherung oder "19-06-2020i" fuer die inkrementelle.

@zindelino
Das Ausloesen der Backup/Kopieraktion per Anstecken eines Datentraeger kannst Du mittels Einsatz des USBDLM von Uwe Sieber loesen. Moeglich ist auch, dass Du einen geplanten Task das Ereignisprotokoll ueberwachen laesst und bei z.B. EventID4 ( The NTFS volume has been successfully mounted. ) die noetigen Aktionen ausfuehren laesst.

BFF
 
  • Gefällt mir
Reaktionen: PHuV und Art Vandelay
BFF schrieb:
Ich lass Robocopy einmal die Woche voll sichern, ueber die restlichen Tage nur das was veraendert wurde.
Geschrieben wird immer in neue Ordner aka "18-06-2020v" fuer die Vollsicherung oder "19-06-2020i" fuer die inkrementelle.

Cooles vorgehen. Wie sieht deine robocopy Syntax denn für die inkrementelle Sicherung aus?
 
Schau Dir den Parameter "MAXAGE:" von Robocopy an. @Art Vandelay

1592516845301.png


Den hab ich auf 2 Tage eingestellt.
Kopiert im Endeffekt alles, was innerhalb der letzten 2 Tage angefasst wurde.
Oder anders gesagt, kopiert nix was aelter ist als 2 Tage.


BFF
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: areiland und Art Vandelay
Ewig nicht mehr genutzt seit der ganze Kram per Synology und Veeam gesichert wird, aber funktionierte "damals" gut.
Im Prinzip erst den Backupordner anlegen lassen und dann mit dessen Rückgabewert das robocopy draufjagen. Innerhalb der Woche Teilsicherungen, zum beliebigen Datum Vollsicherung. Shadowcopy sind zwar sinnvoller, aber im Prinzip könnte man das auch stündlich laufen lassen. Die Dateimenge wird nur seeehr groß.

Die Sicherung auf HDD lässt sich sicherlich auch per Aufgabenplanung und Event Trigger basteln. Aber wie schon angesprochen sollte man das Thema vielleicht mal etwas weiter gefasst überdenken.
PowerShell:
function New-ipxBackupFolder {
    param (
        [Parameter(Mandatory=$true,HelpMessage='Pfad zum Ziel')]
        [string]$Path,
        [Parameter(HelpMessage='Uhrzeit bei diff./ink. Backup anfügen')]
        [switch]$time,
        [Parameter(HelpMessage='Wochentag bei diff./ink. Backup anfügen')]
        [switch]$Weekday
    )

    if ( Test-Path -Path $Path ) {
        if ( $Weekday ) { $subfolder = [System.DateTime]::Today.ToString("dddd") }
        if ( $time ) { $subfolder = (Get-Date -Format yyMMdd) + "_" + (Get-Date -Format HHmm) }
        if ( !$Weekday -and !$time) { $subfolder = (Get-Date -Format yyMMdd) }
        if ( !(Test-Path -Path $Path\$subfolder)) {
            New-Item -Path $Path\$subfolder -ItemType Directory | Out-Null
        }
    }
    $Path + "\" + $subfolder
}

function Backup-ipxItem {
    <#
        .Synopsis
            Kopiert mittels Robocopy einen Ordner für Backupzwecke
        .Description
            Stellt eine Powershell Implementierung für Robocopy dar.
            Unterstützt werden Volles Backup (mit/ohne Remove-Archivebit), Differentiell und Inkrementelle Methode.
            Zusätzliche Optionen sind Dateifilter, Ordnerberechtigungen, Wiederholte Versuche und Wartezeit.
            Der Logfile backupitem_YYYYV.txt wird entweder im Zielverzeichnis oder im angegebenen Ordner angelegt.
            Nur bei mirror werden alle Informationen in den Logfile geschrieben.
            Der Zielordner muss existieren, sonst bricht robocopy ab.
        .Parameter Source
            Quellordner mit den zu kopierenden Dateien
        .Parameter Destination
            Zielordner wohin kopiert werden soll
        .Parameter Filter
            Dateifilter um nur bestimmte Dateitypen zu kopieren
        .Parameter Logpath
            Ordner in dem der Logfile angelegt werden soll, Vorgabe ist Destination
        .Parameter Mirror
            Spiegelt die Quelle im Ziel, löscht demnach auch nicht mehr vorhandene Dateien
        .Parameter Retry
            Wiederholungsversuche bei fehlerhaften Zugriffen, Vorgabe ist Null Sekunden
        .Parameter Wait
            Wartezeit bis zum nächsten Kopierversuch für eine Datei
        .Parameter ACL
            Kopiert die Sicherheitsinformationen und schreibt sie explizit ohne Vererbung auf das Ziel
        .Parameter time
            Fügt bei der differentiellen/inkrementellen Sicherung die Uhrzeit _HHmm an den Sicherungsordner
        .Example
            Backup-ipxItem -source C:\users\user\Downloads -destination d:
            Kopiert den Downloadordner des Benutzers nach D: und legt den Logfile ebenfalls unter D: ab.
        .Example
            Backup-ipxItem -source C:\users\user\Downloads -destination d: -logpath C:\users\user\documents
            Kopiert  ebenfalls den Downloadordner nach D, der Logfile wird aber im benutzerverzeichnis abgelegt.
        .Example
            Backup-ipxItem -source C:\users\user\Downloads -destination d: -removearchivebit
            Ebenfalls Kopie von Downloads nach D, es wird aber das Archivebit zurückgesetzt.
        .Example
            Backup-ipxItem -source C:\users\user\Downloads -destination d: -incremental
            Kopiert nur die geänderten Dateien in Downloads nach D:\yyMMdd\ (=aktuelles Datum) und setzt das Archivebit zurück.
        .Example
            Backup-ipxItem -source C:\users\user\Downloads -destination d: -differential
            Wie -incremental, jedoch wird das Archivbit nicht zurückgesetzt.
        .Example
            Backup-ipxItem -source C:\users\user\Downloads -destination d: -differential -time
            Zusätzlich wird durch -time die Uhrzeit eingefügt, also D:\yyMMdd_HHmm\
            Damit lässt sich mehrmals täglich ein Backup der geänderten Dateien erzeugen.
        .Example
            Backup-ipxItem -source C:\users\user\Downloads -destination d: -ACL
            Kopiert zusätzlich die (vererbten) Dateiberechtigungen (R/W ...) in explizite Rechte der Zieldateien.
        .Notes
            Version: 1.0.1.0
            Stand 23.2.2015
        .Inputs
            None
        .Outputs
            System.IO.Directory und System.IO.File
            gesicherte Dateien und logfile *.txt
    #>
    param (
        [Parameter(Mandatory=$true,HelpMessage='Pfad zur Quelle')]
        [string]$Source,
        [Parameter(Mandatory=$true,HelpMessage='Pfad zum Ziel')]
        [string]$Destination,
        [Parameter(HelpMessage='Dateifilter')]
        $filter = '',
        [Parameter(HelpMessage='Ordner für Logfile')]
        [string]$logpath = '',
        [Parameter(HelpMessage='Spiegelmodus, gelöschte werden entfernt')]
        [switch]$mirror,
        [Parameter(HelpMessage='X Wiederholungen bei Fehler')]
        [int]$retry = 0,
        [Parameter(HelpMessage='X Sekunden Wartezeit bei bevor erneut versucht wird zu kopieren')]
        [int]$wait = 10,
        [Parameter(HelpMessage='Zugriffsrechte kopieren und explizit auf Dateien anwenden')]
        [switch]$ACL,
        [Parameter(HelpMessage='Archivebit zurücksetzen')]
        [switch]$RemoveArchivebit,
        [Parameter(HelpMessage='Inkrementelles Backup in Ordner mit yyMMddhh')]
        [switch]$Incremental,
        [Parameter(HelpMessage='Differenzielles Backup in Ordner mit yyMMddhh')]
        [switch]$Differential
    )
   
    [string]$mir = ''
    [string]$rights = ''
    [string]$date= get-date -uformat %Y%V
    [string]$option1 = '/e'
    [string]$option2 = ''
    $attribute = [System.IO.FileAttributes]::archive
   
    if ($logpath -eq '' ) { $logpath = $destination }
   
    if ( $filter -eq '' ) { $filter = '*.*' }
   
    if ( $ACL ) { $rights = '/copy:DATSO' }


    if ( $mirror ) {
        $option1 = '/e'
        $option2 = '/mir'
    }
    if ( $Incremental ) {
        $option1 = '/s'
        $option2 = '/m'
    }
    if ( $Differential ) {
        $option1 = '/s'
        $option2 = '/a'
    }

    robocopy "$Source" "$Destination" $filter $option1 $option2 $rights /R:$retry /W:$wait /log+:$logpath\backupitem_$date.txt /ndl /nfl /v

    if ( $RemoveArchivebit) {
        Get-ChildItem -Path $Source -Recurse -File | Remove-ipxArchivebit
        }

}

function Get-ipxArchivebit {
    <#
    .Synopsis
        Ermittelt Dateien anhand des Archivebits.
    .Description
        Im angegebenen Ordner selbst oder rekursiv durch alles Unterordner
        werden die Dateien ermittelt die ein Archivebit gesetzt haben.
        Alternativ können über "inverse" als Dateien ohne Archivebit ermittelt werden.
        Über "filter" können Dateitypen wie *.jpg angegeben werden.
    .Parameter path
        Ordnerpfad in dem die Dateien ermittelt werden sollen.
    .Parameter filter
        Optionaler Dateifilter wie *.jpg oder *.avi.
    .Parameter recurse
        Aktiviert die rekursive Suche in allen Unterordnern von $path.
    .Parameter inverse
        Invertiert die Suche und findet alle Dateien ohne Archivebit.
    .Example
        Get-ipxArchivebit -path C:\users\user\downloads
        Ermittelt alle Dateien mit Archivebit im Downloadordner eines Benutzers "user".
    .Example
        Get-ipxArchivebit -path C:\users\user\downloads -recurse
        Ermittelt alle Dateien mit Archivebit im Downloadordner und den Unterordnern eines Benutzers "user".
    .Example
        Get-ipxArchivebit -path C:\users\user\downloads -inverse -recurse
        Ermittelt alle Dateien ohne Archivebit im Downloadordner und den Unterordnern eines Benutzers "user".
    .Example
        Get-ipxArchivebit -path C:\users\user\downloads -inverse -recurse | Set-ipxArchivebit
        Ermittelt rekursiv alle Dateien ohne Archivebit und setzt es danach über die Pipeline.
    .Example
        Get-ipxArchivebit -path C:\users\user\downloads -recurse | Remove-ipxArchivebit
        Ermittelt rekursiv alle Dateien mit Archivebit und entfernt es danach über die Pipeline.
    .Inputs
        System.IO.DirectoryInfo als System.String path
        System.String filter
        System.SwitchParameter recurse und inverse
    .Outputs
        System.Array
    .Notes
        Version: 1.0.0.0
        Datum: 1.3.2015
    .Component
        None
    #>

    param (
        [Parameter(Mandatory,HelpMessage='Ordnerpfad zu Dateien')]
        [string]$path,
        [Parameter(HelpMessage='Dateifilter')]
        [string]$filter='',
        [Parameter(HelpMessage='rekursiv oder nur angegebener Ordner')]
        [switch]$recurse,
        [Parameter(HelpMessage='Sucht Dateien ohne Archivbit')]
        [switch]$inverse
    )
   
    $attribute = [System.IO.FileAttributes]::archive
    if ( $recurse ) {
        Get-ChildItem -Path $path -Filter $filter -Recurse -File |
            ForEach-Object {
                if ( !$inverse ) {
                    if ( (Get-ItemProperty -Path $_.FullName).Attributes -band $attribute ) { $_ }
                }
                else {
                    if ( (Get-ItemProperty -Path $_.FullName).Attributes -band $attribute ) { <#<do nothing#> }
                    else { $_ }
                }
            }
    }
    else {
        Get-ChildItem -Path $path -Filter $filter -File |
            ForEach-Object {
                if ( !$inverse ) {
                    if ( (Get-ItemProperty -Path $_.FullName).Attributes -band $attribute ) { $_ }
                }
                else {
                    if ( (Get-ItemProperty -Path $_.FullName).Attributes -band $attribute ) { <#<do nothing#> }
                    else { $_ }
                }
            }
    }
}

function Set-ipxArchivebit {
    <#
    .Synopsis
        Setzt das Archivebit für Dateien die es nicht gesetzt haben.
    .Description
        In einer Pipeline werden erst Dateien ermittelt die der Funktion übergeben werden,
        die dann das Archivebit setzt, wenn es nicht vorhanden ist.
    .Parameter path
        Voller Dateipfad der von der Pipeline kommt und als Alias 'FullName' gemapped wird.
    .Example
        Get-ipxArchivebit -path C:\users\user\downloads -inverse -recurse | Set-ipxArchivebit
        Ermittelt rekursiv alle Dateien ohne Archivebit und setzt es danach über die Pipeline.
    .Inputs
        System.IO.DirectoryInfo als System.String path
    .Outputs
        None
    .Notes
        Version. 1.0.0.0
        Datum: 1.3.2015
    .Component
        None
    #>

    param (
        [Parameter(Mandatory,HelpMessage='Dateipfad aus der Pipeline',ValueFromPipeline=$true,ValueFromPipelineByPropertyName=$true)]
        [Alias('Fullname')]
        [string]$path
    )

    begin {
        $attribute = [System.IO.FileAttributes]::archive
    }

    process {
        if ((Get-ItemProperty -Path $path).Attributes -band $attribute ) { <#do nothing#> }
        else {
            Set-ItemProperty -Path $path -Name Attributes -Value ((Get-ItemProperty -Path $path ).Attributes -bxor $attribute) -ErrorAction SilentlyContinue
        }
    }
}

function Remove-ipxArchivebit {
    <#
    .Synopsis
        Entfernt das Archivebit für Dateien die es gesetzt haben.
    .Description
        In einer Pipeline werden erst Dateien ermittelt die der Funktion übergeben werden,
        die dann das Archivebit entfernt, wenn es vorhanden ist.
        Findet Verwendung bei Backup-Item und Backup-ItemToZip.
    .Parameter path
        Voller Dateipfad der von der Pipeline kommt und als Alias 'FullName' gemapped wird.
    .Example
        Get-ipxArchivebit -path C:\users\user\downloads -recurse | Remove-ipxArchivebit
        Ermittelt rekursiv alle Dateien mit Archivebit und entfernt es danach über die Pipeline.
    .Inputs
        System.IO.DirectoryInfo als System.String path
    .Outputs
        None
    .Notes
        Version. 1.0.0.0
        Datum: 1.3.2015
    .Component
        None
    #>

    param (
        [Parameter(Mandatory,HelpMessage='Dateipfad aus der Pipeline',ValueFromPipeline=$true,ValueFromPipelineByPropertyName=$true)]
        [Alias('Fullname')]
        [string]$path
    )

    begin {
        $attribute = [System.IO.FileAttributes]::archive
    }

    process {
        if ((Get-ItemProperty -Path $path).Attributes -band $attribute ) {
            Set-ItemProperty -Path $path -Name Attributes -Value ((Get-ItemProperty -Path $path ).Attributes -bxor $attribute)
        }
   
    }
}
 
PHuV schrieb:
Ist an sich überall in Firmen das übliche vorgehen seit Jahrzehnten.
Ja genau so und nicht anders. ;-)

Wir machen auch seit Jahren Datensicherung via Robocopy, aber auf externe Wechselmedien, daher nie die Anforderung von inkrementellen Sicherungen gehabt.
Ergänzung ()

BFF schrieb:
Schau Dir den Parameter "MAXAGE:" von Robocopy an. @Art Vandelay

Anhang anzeigen 934302

Den hab ich auf 2 Tage eingestellt.
Kopiert im Endeffekt alles, was innerhalb der letzten 2 Tage angefasst wurde.
Oder anders gesagt, kopiert nix was aelter ist als 2 Tage.


BFF

@BFF : danke!
 
Wenn man nur paar GB an Daten hat, mag das ja mit robocopy praktikabel sein. Aber wohin will man denn einen 5 TB Datenbestand sinnvoll versioniert spiegeln. Also als übliches Vorgehen in allen Firmen würde ich das mitnichten bezeichnen.
Veeam sichert grundsätzlich inkrementell und wenn man möchte zwischendrin mal voll.
Synology HyperBackup macht ebenfalls inkrementell auf Blockebene, da wird nur gesichert was sich geändert hat. Da wächst das Backup nur um die geänderten Daten, und nicht täglich um den gesamten Datenbestand.

Von daher macht es auch nicht so viel Sinn das alles per robocopy vorzuhalten.
  • Nutzer hat was aktuelles gelöscht > Schattenkopie, kann der Nutzer selbst wiederherstellen. Kein Backup nötig. Alternativ administrativer Papierkorb
  • Was älteres wurde gelöscht > Inkrementelle tägliche Sicherung, die Datei wird aus dem Tagesbackup gefischt. Wie lange man das aufhebt hängt von den Vorlieben und dem Platz ab, bei uns 370 Tage.
  • Ganze System abgeschmiert > da will man sowieso nur den letzten Stand, alles davor ist irrelevant.

Selbst so Späße wie Quartalsfestplatten mit robocopy und einem Full Backup und täglichen differenziellen daneben ist nur so halb praktikabel. Hab ich auch mal ne zeitlang gemacht, aber da gibt es doch weitaus schönere Methoden die weniger Handarbeit brauchen.
 
morcego schrieb:
Aber wohin will man denn einen 5 TB Datenbestand sinnvoll versioniert spiegeln.

Das mach ich locker mit ca. 20 TB Daten (wenn woechentliche Vollsicherung) per Robocopy.
Taeglich Inkrementell ist ein Bruchteil davon, nie wirklich ueber 1 TB.
Robocopy ist hier die Vorsicherung, sprich das Einsammeln der Daten. Geschrieben wird auf einen Stoarageverbund mit ingesamt 1 PB. Am Ende der Strecke (Sicherungskette) kommt dann der Bandroboter. Der schreibt die Woche komplett weg. Wenn das gelaufen und geprueft ist, fliegt die aelteste Woche runter von der Vorsicherung.

Ok. Fuer zu Hause waere das etwas uebertrieben gross.
Ich kenn aber jemanden der privat zwei Buffalo Terastations mit 48 TB benutzt um seine Daten wenigsten zweimal zur Seite zu haben.

BFF
 
Der Feind ist die Bequemlichkeit…

Überlege ich was ich an echten eigennn Daten habe komme ich auf unter 30GB, über 30 Jahre aufgestaut. Fotos wären das größte an Volumen.
Dass man das Betriebssystem anderweitig sichern sollte, keine Frage. Und ich game auch nicht (wo dann eigentlich [!] auch nur Spielstände und Mods etwas Eigenes wären).

Was hat Otto Normaluser also auf der Kante? Was kosten (Fortschritt, Fortschritt) über USB3 angetriebene 2, wenns sein muss 4TB, HDDs? Wenig. Muss ja keine SSD sein. Motto: lieber mehrere keine Platten als eine große. Die muss ich nur anhängen und einfache Batches sichern selbst wenn WIN mal wieder den LW-Bachstuben versemmelt. Dann die Platte in den… jetzt hätte ich glatt Kühlschrank gesagt… weit weg im Haus oder Wohnung, vielleicht eine am Arbeitsplatz und von mir aus im Auto und Sportverein o.ä.

Dann muss nur die Disziplin passen immer wieder mal eine Platte mitzubringen, zu aktualisieren und morgen wieder mitzunehmen.

Das wäre ein Backup.

CN8
 
BFF schrieb:
Schau Dir den Parameter "MAXAGE:" von Robocopy an. @Art Vandelay

Anhang anzeigen 934302

Den hab ich auf 2 Tage eingestellt.
Kopiert im Endeffekt alles, was innerhalb der letzten 2 Tage angefasst wurde.
Oder anders gesagt, kopiert nix was aelter ist als 2 Tage.


BFF

Das klingt eigentlich genau nach dem was ich suche. Welche Parameter benutzt du denn, um Robocopy dann für jeden Tag einen neuen Ordner erstellen zu lassen, in den dann gesichert werden soll?

Ich hab ja da praktisch nur die eine Zeile mit den Pfaden:

robocopy "C:\Users\BLABLABLA\Documents" "D:\Backup" /E /SEC /COPYALL /V /NP /R:10 /W:30

In diesem Backup Ordner, sollte dann mit robocopy am besten für jeden Tag ein neuer Ordner angelegt werden, in dem dann eine vollständige Sicherung rein gepackt wird
 
Fürs Datum kannst du dir via Batch was basteln. Bsp für eine Sicherung, wo jeder Tag einen neuen Ordner bekommt:
Code:
for /f "delims=" %%a in ('wmic OS Get localdatetime ^| find "."') do set DateTime=%%a

set Yr=%DateTime:~0,4%
set Mon=%DateTime:~4,2%
set Day=%DateTime:~6,2%

set BackupDate=%Yr%-%Mon%-%Day%

robocopy "E:\Test" "F:\Backups\Test\%BackupDate%" /MIR
Damit wird der Ordner "Test" am heutigen Tag ins Verzeichnis "Backups\Test\2020-06-22" gespiegelt.

Nachtrag:
Möchtest du auch Stunde, etc. berücksichtigen:
Code:
set Hr=%DateTime:~8,2%
set Min=%DateTime:~10,2%
set Sec=%DateTime:~12,2%

Entsprechende Platzhalter, wie %BackupDate% kann man dann z.B. für den Namen (oder einen Teil) der Log-Datei verwenden, etc.
 
Zuletzt bearbeitet:
Das klingt super. Werde ich direkt mal ausprobieren! Vielen Dank!

EDIT: Hat perfekt gepasst. Habe jetzt einmal alles gesichert, und lasse per Aufgabenplanung dann jeden Tag einmal nochmal alle geänderten oder neuen Dateien in einen separaten Ordner schieben. Genau das was ich haben wollte. Hoffe mal, dass die Aufgabenplanung das auch so erledigt. Danke erstmal!
 
Zuletzt bearbeitet:
Meine ROBOCOPY-Paramter? /MIR.
Und je nach dem noch /W: /R:
Einzig (welch Witz) /MAXAGE habe ich reingenommen (aber ich sichere nicht täglich auf externe Platten und habe einige zu liegen) weil ROBOCOPY den irrwitzigen Bug hat mit /MIR den Begriff »neuer« nicht geregelt zu bekommen.
Merke: ein zu kurzes MAXAGE kann bei längerfristig nicht eingesetzten Datenträger einen ungünstigen Schnitt verzapfen. 1 Tag wenn man über den Urlaub aussetzt… Obacht!

CN8
 
Warum Obacht?

Wenn man "ueber den Urlaub aussetzt" ist halt nix im ersten Inkrementellen danch, weil eh nix geaendert wurde.
Abgesehen davon waere fuer ein Restore das letzte Inkrementelle oder Vollbackup aus der Zeit vor dem "Urlaub" mehr ausschlaggebend.

Ein Parameter MAXAGE verzapft nix, wenn Du halt nicht immer in den selben Zielordner schreibst.
Einfach jedes Backup in einen eigenen Ordner mit eigenem wieder erkennbarem Namen.
Braucht etwas mehr Platz ist aber gut verwaltbar und schont die Nerven.

BFF
 
Zurück
Oben