chrilo
Goto Top

robocopy - Dateiattribut -created- gleich Backupdatum - wegen DelAge32 Automatiseirung

Hallo,

ich möchte folgendes mit robocopy und DelAge32 realisieren:

Ein Backup-Script, welches lokale Dateien (XP-Clients) auf ein Netzlaufwerk kopiert. Vollautomatisch mit Scheduler - Ausführung immer Freitags.
Es sollen immer die drei letzen Sicherungsstände zur Verfügung stehen. Ältere Sicherungen sollen automatisch gelöscht werden.

Meine Überlegung:


@echo off
echo Starte Sicherung...

set Quelle01="C:\bla"
set Quelle02="D:\blub"

set Ziel01="\\NAS\Backup\Station1\%date%\Daten"
set Ziel02="\\NAS\Backup\Station1\%date%\email"

robocopy %Quelle01% %Ziel01% /COPY:DASOU /V /NP /LOG:"D:\Backup\Logfiles\%date%.log" /B /R:10 /W:30 /ETA
robocopy %Quelle02% %Ziel02% /COPY:DASOU /V /NP /LOG:"D:\Backup\Logfiles\%date%.log" /B /R:10 /W:30 /ETA

echo.
@echo off
echo Loesche alte Sicherung...
echo.

DelAge32 D:\Backup\*.* 21 /created /includeRO /includeH /recurse /rd

echo.
echo Sicherung abgeschlossen.
echo.
pause


Bei den neu angelegten Ordnern ist das Erstellungs-Datum = Backup-Datum

Problem:

robocopy ändert nicht den Timestamp der kopierten Files. Das ist bei "letzte Änderung" auch ok, jedoch bleibt auch die File-Info "Erstellt am" (created) unverändert (gleich wie bei den Original-Dateien).
Damit DelAge32 die alten Sicherungen automatisch löscht, muss das "Erstellt am"-Datum der Files gleich dem Backup-Datum sein.

Frage:
Wie ändere ich mit robocopy (Parameter) das File-Attribut "created" = Backup-Datum?
Weiss jemand wie das funktioniert? Gibt es evtl. bessere Ansätze/Lösungen?

Danke & Gruß
chrilo

Content-Key: 71823

Url: https://administrator.de/contentid/71823

Printed on: April 19, 2024 at 18:04 o'clock

Member: chrilo
chrilo Oct 24, 2007 at 15:58:07 (UTC)
Goto Top
ups - der LOG-Pfad im Script ist natürlich ein anderer... face-wink
Member: chrilo
chrilo Oct 27, 2007 at 12:33:32 (UTC)
Goto Top
hi,

im Moment schaut´s so aus:



@echo off
echo Starte Sicherung...


set Quelle01="C:\Pebl"
set Quelle02="D:\Update"

set Logpath="D:\Backup\Logfiles\Station1"
set Ziel01="D:\Backup\Station1\%date%\Pebl"
set Ziel02="D:\Backup\Station1\%date%\Update"

robocopy %Quelle01% %Ziel01% /COPY:DA /V /NP /LOG+:"%Logpath%\%date%.log" /B /R:10 /W:30 /ETA
robocopy %Quelle02% %Ziel02% /COPY:DA /V /NP /LOG+:"%Logpath%\%date%.log" /B /R:10 /W:30 /ETA
echo.


@echo off
echo aendere Timestamp...
echo.

dirdate -R FILE=%Ziel01%\*.* %Ziel01%\*.*
dirdate -R FILE=%Ziel02%\*.* %Ziel02%\*.*

echo.
echo Sicherung abgeschlossen.
echo.


@echo off
echo Loesche alte Sicherung...
echo.

DelAge32 D:\Backup\Station1\*.* 22 /includeRO /includeH /recurse /rd /preview

echo.
echo Sicherung abgeschlossen.
echo.
pause


Infos zum Script:

- D:\Backup ist dann natürlich ein Netzlaufwerk, welches ich mit net use mounte
- Der Aufruf "pause" am Schluss wird ersetzt durch "psshutdown"
- Parameter /preview bei DelAge32 ist nur zum tetsten

ok, so läufts schon, jedoch ändere ich jetzt den Timestamp: "geändert am",
"erstellt am" bleibt das Original-Datum => besser wäre es genau anderstrum.

Hat jemand ´ne Idee, wie´s richtig geht?

Danke und Gruß
chrilo
Member: Biber
Biber Oct 27, 2007 at 13:48:56 (UTC)
Goto Top
Moin chrilo,

ich denke, Du machst es zu kompliziert.
Du hast doch schon 2 eindeutige Datumswerte, mit denen Du eindeutig das Sicherungsdatum identifizieren kannst.
  • durch set Ziel01="D:\Backup\Station1\%date%\Pebl ist doch das Datum im DIR-Namen enthalten
  • und außerdem, auch wenn das Verzeichnis "Fritz" heißen würde, hätte es ja dennoch das Erstellungsdatum der Sicherung.

Warum nutzt Du nicht eine dieser beiden Informationen?

Grüße
Biber
Member: chrilo
chrilo Oct 27, 2007 at 14:11:59 (UTC)
Goto Top
hi Biber,

vieleicht denke ich zu kompliziert, nun habe ich aber schon diesen Weg angefangen...
Sonst müsste ich mir wieder was überlegen, wie ich dann die alten Ordner (älter 3Wochen) automatisch lösche. Also bezogen auf den Ornernamen...
Ob das besser ist, hmm?!

Auf jeden Fall habe ich´s nun hinbekommen; Datum "last modified" der gesicherten Files bleibt original - Datum "created" ist gleich wie das Backup-Datum.
Es schein zu funktionieren face-wink

Und wie?

snip...

dirdate -R -CREATION FILE=%Ziel01%\*.* %Ziel01%\*.*
dirdate -R -CREATION FILE=%Ziel02%\*.* %Ziel02%\*.*

snap...

snip...

DelAge32 D:\Backup\Station1\*.* 22 /created /includeRO /includeH /recurse /rd

snap...

Mit den Parametern creation/created hatte ich´s schon mal versucht - ging aber irgendwie nicht? - egal

Soweit Sogut, so wollte ich es ja face-wink

Gibt es dennoch irgendwas, wo Ihr verbessern würdet, bzw. wo ich noch einen Denkfehler drinhab??

Danke und Gruß
chrilo