Zeitstempel synchronisieren

German support forum

Moderators: sheep, Hacker, Stefan2, white

User avatar
Dalai
Power Member
Power Member
Posts: 7045
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Re: Zeitstempel synchronisieren

Post by *Dalai »

2Leerzeichen
Such mal in der TC-Hilfe nach CopyAllTimes. Das hilft dir allerdings alles nichts, wenn du nur die Zeitstempel synchronisieren willst.

Eine absolut zuverlässige Möglichkeit zum Kopieren aller Eigenschaften (Zeitstempel, ADS, Berechtigungen, Junctions, Hardlinks und sonstige Metadaten) ist das Kopieren der Partition. Ich bezweifle aber, dass das in einem solchen Fall (sterbende Platte) sinnvoll und praktikabel ist, zumal man dafür eine weitere mindestens ebenso große Platte im selben Rechner braucht.

Will sagen: Ist die Platte wirklich ganz kurz vor dem Abnippeln, würde ich kein Risiko mehr eingehen und auf solche unwichtigen Dinge wie Erstelldatum verzichten. Wenn du meinst, die Platte macht es noch ein bisschen, würde ich die Daten mit einem geeigneten Tool kopieren. Das kann TC sein, aber dann sind diverse Einstellungen vorher zu treffen, um wirklich alles so zu übernehmen, wie es ist.

Grüße
Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups

Leerzeichen
Junior Member
Junior Member
Posts: 14
Joined: 2020-04-27, 20:04 UTC

Re: Zeitstempel synchronisieren

Post by *Leerzeichen »

Lucky Joe wrote:
2020-05-01, 09:08 UTC
Hallo zusammen,

das AutoHotkey-Script von Hacker kann man wie folgt ändern, damit die Unterverzeichnisse mitberücksichtigt werden.
Hi Lucky Joe

Herzlichen Dank für deine rasche Hilfe.
Ich habe das Script eingetragen und ausgeführt.
Musste in den Parametern allerdings noch "%P\" "%T\" angeben, da sonst nichts passiert ist, ich hoffe das ist so korrekt.

Es scheint zu funktionieren, im TC, wird auch das Datum aus dem linken Fesnter auf as Datum rechts übertragen.
Wenn ich dann allerdings einen Blick in den Windows Explorer werfe, steht bei Erstelldatum nach wie vor die alte/falsche.

Woran könnte das noch liegen?

Gruss

User avatar
Dalai
Power Member
Power Member
Posts: 7045
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Re: Zeitstempel synchronisieren

Post by *Dalai »

Leerzeichen wrote:
2020-05-01, 15:43 UTC
Wenn ich dann allerdings einen Blick in den Windows Explorer werfe, steht bei Erstelldatum nach wie vor die alte/falsche.

Woran könnte das noch liegen?
Daran, dass die AutoHotkey-Funktion FileGetTime standardmäßg nur das Änderungsdatum liest: https://www.autohotkey.com/docs/commands/FileGetTime.htm :
WhichTime
M = Modification time (this is the default if the parameter is omitted)
Das Skript müsste so umgebaut/erweitert werden, dass es alle drei Zeitstempel liest und schreibt. Nur ist das - wie ich schon erwähnte - nicht zwingend zuverlässig, gerade wenn Virenscanner oder andere Hintergrundprogramme noch mit beteiligt sind.

Regards
Dalai
Last edited by Dalai on 2020-05-01, 15:51 UTC, edited 1 time in total.
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups

Leerzeichen
Junior Member
Junior Member
Posts: 14
Joined: 2020-04-27, 20:04 UTC

Re: Zeitstempel synchronisieren

Post by *Leerzeichen »

Dalai wrote:
2020-05-01, 15:35 UTC
2Leerzeichen

Such mal in der TC-Hilfe nach CopyAllTimes. ...

Grüße
Dalai
Ich habe mit FreeFileSync den Inhalt der Dateien der strerbenden und des Backups verglichen.
Es scheint, dass umgerechnet auf ca. 1 GB defekte Sektoren vorhanden sind.
Somit könnte ich jetzt die Platte nochmals kopieren und mit den gewonnenen Informationen welche Daten defekt sind, diese dann aus dem Backup fischen. Ich fürchte nur, dass das ein Fass ohne Boden ist.

Am ärgerlichsten ist, dass sich die Daten auf einem RAID-1 befinden und dank automatischer Ausführung von chkdsk und dem vollständigen Ignorieren des Intel RST (Hat nicht gemerkt, dass die Platte stirbt), ich erst in diese Misere geraten bin.

Alles in allem läuft die sterbende Platte noch, ich speichere allerdings keine weiteren Daten darauf.

Ich hoffe noch, dass ich einen Fehler in der Ausführung des AHK gemacht habe.

Leerzeichen
Junior Member
Junior Member
Posts: 14
Joined: 2020-04-27, 20:04 UTC

Re: Zeitstempel synchronisieren

Post by *Leerzeichen »

Dalai wrote:
2020-05-01, 15:49 UTC
Leerzeichen wrote:
2020-05-01, 15:43 UTC

Das Skript müsste so umgebaut/erweitert werden, dass es alle drei Zeitstempel liest und schreibt. Nur ist das - wie ich schon erwähnte - nicht zwingend zuverlässig, gerade wenn Virenscanner oder andere Hintergrundprogramme noch mit beteiligt sind.

Regards
Dalai
Dann hoffe ich nochmals auf Hilfe für die Anpassung des Scripts.

Weitere Hintergrund Programme kann ich ausschliessen, sonst hätte ich auch die Info nicht, dass Daten 2011 erstellt wurden.
Der letzte Zugriff kann wirklich vernachlässigt werden.

User avatar
Dalai
Power Member
Power Member
Posts: 7045
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Re: Zeitstempel synchronisieren

Post by *Dalai »

Leerzeichen wrote:
2020-05-01, 15:55 UTC
Weitere Hintergrund Programme kann ich ausschliessen, sonst hätte ich auch die Info nicht, dass Daten 2011 erstellt wurden.
Ich glaube, du missverstehst. Wenn Virenscanner Dateien für längere Zeit "festhalten" (um sie zu scannen), kann das Setzen von Zeitstempeln fehlschlagen, und zwar unabhängig davon, welche Mühe man sich gibt oder wie ein Skript gestaltet ist.

Es gab in der Vergangenheit zahlreiche Meldungen von Nutzern, dass das Übertragen von Zeitstempeln mittels TC nicht funktionieren würde, und sehr oft war dann ein Virenscanner im Verdacht.

Da es in deinem Fall nur um das nachträgliche Übertragen von Zeitstempeln geht, sollte das weniger anfällig für derartige Dinge sein. Aber wer weiß. Murphy hat überall seine Finger im Spiel, nicht nur bei deinem RAID-1 ...

Grüße
Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups

User avatar
Lucky Joe
Member
Member
Posts: 121
Joined: 2012-07-25, 10:30 UTC

Re: Zeitstempel synchronisieren

Post by *Lucky Joe »

Hi,

unabhängig davon, dass Dalai Recht hat, hier das angepasste Script, das nun auch Folgendes berücksichtigt:
M = Zeitpunkt der letzten Änderung
C = Zeitpunkt der Erstellung
A = Zeitpunkt des letzten Zugriffs

Code: Select all

#NoEnv
#SingleInstance force

QuellVerzeichnis = %1%
Loop, Files, %1%*.*, DFR   ; ("DR", wenn nur Verzeichnisse berücksichtigt werden sollen)
{
	If StrLen(A_LoopFileDir) > StrLen(QuellVerzeichnis)
		UnterVerzeichnis := SubStr(A_LoopFileDir, StrLen(QuellVerzeichnis) +1) . "\"

	FileGetTime, TimeStampM,, M
	FileGetTime, TimeStampC,, C
	FileGetTime, TimeStampA,, A
	FileSetTime, %TimeStampM%, %2%%UnterVerzeichnis%%A_LoopFileName%, M
	FileSetTime, %TimeStampC%, %2%%UnterVerzeichnis%%A_LoopFileName%, C
	FileSetTime, %TimeStampA%, %2%%UnterVerzeichnis%%A_LoopFileName%, A

	; MsgBox, %TimeStamp% - %2%%UnterVerzeichnis%%A_LoopFileName%
}
Herzliche Grüße aus dem Rheinland
Lucky Joe

Leerzeichen
Junior Member
Junior Member
Posts: 14
Joined: 2020-04-27, 20:04 UTC

Re: Zeitstempel synchronisieren

Post by *Leerzeichen »

Für solche grossen Aktionen deaktiviere ich tatsächlich den AV, dazu kommt, dass ich seit Windows 10 mein System aktuell halte und die in Windows integrierten Schutzfunktionen verwende (unabhängig davon ob die jetzt gut sind oder nicht).

Bis anhin hatte ich mit FreeFileSync keine Probleme beim synchronisieren von Verzeichnissen.
Mir ist auch so leider zu spät aufgefallen, dass FreeFileSync nicht alle Parameter mit kopiert.
Ich werde künftig wohl wieder mit robocopy arbeiten müssen.

Leerzeichen
Junior Member
Junior Member
Posts: 14
Joined: 2020-04-27, 20:04 UTC

Re: Zeitstempel synchronisieren

Post by *Leerzeichen »

Lucky Joe wrote:
2020-05-01, 17:20 UTC
Hi,

unabhängig davon, dass Dalai Recht hat, hier das angepasste Script, das nun auch Folgendes berücksichtigt:
M = Zeitpunkt der letzten Änderung
C = Zeitpunkt der Erstellung
A = Zeitpunkt des letzten Zugriffs
Vielen Dank, das Script funktioniert soweit, es macht allerdings den Anschein, dass es nicht in allen Unterordnern "nachsieht".
Es scheint auch nicht bei allen Ordnern zu funktionieren, habe eben Versucht den Musik Ordner zu "aktualisieren", da ändert das Script leider keine einzige Information.

Woran könnte das liegen?
AV ist deaktiviert.

User avatar
Lucky Joe
Member
Member
Posts: 121
Joined: 2012-07-25, 10:30 UTC

Re: Zeitstempel synchronisieren

Post by *Lucky Joe »

Hi,

das kann ich dir nicht sagen, weil deine Angaben nicht ausreichen, das Script dahingehend zu untersuchen. Bei mir läuft das Script tadellos, auch im Ordner Musik.
Herzliche Grüße aus dem Rheinland
Lucky Joe

Leerzeichen
Junior Member
Junior Member
Posts: 14
Joined: 2020-04-27, 20:04 UTC

Re: Zeitstempel synchronisieren

Post by *Leerzeichen »

ok verstehe, dann versuche ich mehr Details zu liefern.

PC System: i3-2th Gen, 16 GB RAM
Das Ziel liegt auf einer Synology DS118 NAS.
In der Summe sollen 3.15 TB Daten angepasst werden.
648.952 Dateien, 54.015 Ordner
Wobei darin auch Sicherungen (Images) anderer PCs/Notebooks, enthalten sind, bei den wäre der korrekte Zeitstempel nicht so wichtig.

Im TC (aktuelle Version), markiere ich links alle Order, damit sie rot eingefärbt sind.
Gleiches wiederhole ich rechts, anschliessend starte ich direkt das Script im Menü.

Beim ersten Durchlauf habe ich alle Verzeichnisse im root markiert.
Das Script habe ich eine Nacht laufen lassen.
Ohne erkennbaren Grund wurden für mich nicht nachvollziehbar Daten nicht angepasst.

Beim zweiten Versuch habe ich nur einen Ordner mit diversen Unterordnern markiert, einen Teil der Unterordner wurden angepasst, der andere Teil nicht.

Könnte es sein, dass das Script bei so vielen Daten an einer Art Pufferüberlauf hängt und nicht fortfahren kann?
Last edited by Leerzeichen on 2020-05-03, 19:47 UTC, edited 2 times in total.

User avatar
Hacker
Moderator
Moderator
Posts: 11677
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Re: Zeitstempel synchronisieren

Post by *Hacker »

Leerzeichen,
Im TC (aktuelle Version), markiere ich links alle Order, damit sie rot eingefärbt sind.
Die Markierung bewirkt überhaupt nichts. Das Skript geht alle Ordner, Unterordner und Dateien im Quellordner durch, und falls es solche auch im Zielverzeichnis (und dessen Unterordnern) findet, passt es deren Daten an.

Code: Select all

TimeStampTypes := ["M", "C", "A"]

Loop, Files, % A_Args[1] . "*.*", DFR
	For Index, TimeStampType in TimeStampTypes
	{
		FileGetTime, TimeStamp, % A_LoopFileLongPath, % TimeStampType
		FileSetTime, % TimeStamp, % StrReplace(A_LoopFileLongPath, A_Args[1], A_Args[2]), % TimeStampType, 1
	}
funzt für's Übertragen der Daten alle Ordner und Dateien von Quelle nach Ziel.

HTH
Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.

User avatar
Lucky Joe
Member
Member
Posts: 121
Joined: 2012-07-25, 10:30 UTC

Re: Zeitstempel synchronisieren

Post by *Lucky Joe »

Hi Roman,

Danke für die Verbesserung: schön knackig kurz :-)
Herzliche Grüße aus dem Rheinland
Lucky Joe

User avatar
Hacker
Moderator
Moderator
Posts: 11677
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Re: Zeitstempel synchronisieren

Post by *Hacker »

Lucky Joe,
Funzt natürlich beides. ;)

Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.

Leerzeichen
Junior Member
Junior Member
Posts: 14
Joined: 2020-04-27, 20:04 UTC

Re: Zeitstempel synchronisieren

Post by *Leerzeichen »

Ich scheine kein Glück zu haben, einige Ordner lassen sich weder mit dem "alten" noch mit dem neuen Script dazu überreden das Erstelldatum anzunehmen.

Habt ihr noch eine Idee?

Post Reply