Wie kann festgestellt werden, ob / wann ein langer Dateikopiervorgang tatsächlich abgeschlossen wurde?

7

Nachdem ich mehrere sehr große Dateien (VHDs) zwischen zwei Servern verschieben musste, startete ich den Dateikopiervorgang mit Windows Explorer in einer Remotedesktopsitzung und schloss die Sitzung, ohne mich abzumelden, sodass die Dateikopie funktioniert. Am nächsten Tag habe ich mich wieder angemeldet und die Dateikopie scheint abgeschlossen zu sein ... aber alle Zeitstempel in den Dateien (erstellt, zuletzt aufgerufen, zuletzt geändert) beziehen sich auf den Zeitpunkt, zu dem ich die Kopie gestartet habe, und ich weiß es mit Sicherheit Der Kopiervorgang dauerte mehrere Stunden.

Ich hätte erwartet, dass sich mindestens die Zeitstempel "Zuletzt aufgerufen" oder "Zuletzt geändert" auf die tatsächliche Zeit beziehen, zu der der Dateikopiervorgang beendet wurde, aber es sieht so aus, als würde dies nicht funktionieren.

Wie kann ich (wenn überhaupt) überprüfen, ob und wann die Kopie erfolgreich abgeschlossen wurde?

Die Dateigröße ist kein Indikator, da den Dateien immer die volle Größe zugewiesen wird, auch wenn ein Kopiervorgang unterbrochen wird.

Massimo
quelle

Antworten:

1

Sie können fciv verwenden , um einen Hash der Datei sowohl auf dem Quell- als auch auf dem Zielserver zu generieren. Wenn die Hashes übereinstimmen, können Sie zu 100% sicher sein, dass die Kopie erfolgreich war.

Chris McKeown
quelle
Das oder ein anderes Datei-Hashing-Tool. Großartige Idee.
Massimo
4

Die beste Lösung, die ich kenne, ist die Verwendung von RoboCopy mit dieser /log:Option.

John Gardeniers
quelle
Das ist in Ordnung ... aber wenn die Dateikopie bereits mit dem Explorer fertig ist ?
Massimo
@Massimo, Ihre einzige andere Option in diesem Fall ist das Entschlüsseln der Ereignisprotokolle (und viel Glück damit).
John Gardeniers
1

Sie geben nicht an, welches Betriebssystem Sie verwenden. Spätere Versionen von Windows Performance Monitor können jedoch verwendet werden, um eine Zeitangabe zu geben, wenn Sie den bytes sent per secondoder den bytes read per secondZähler für die verwendete Netzwerkschnittstelle hinzufügen .

Das Leistungsüberwachungsdiagramm zeigt maximal 1000 Punkte (Windows 7 *). Wenn die Genauigkeit nicht zu wichtig ist, können Sie die Abtastfrequenz auf 60 Sekunden mit einer Gesamtdauer von 60000 Sekunden (16,6 Stunden) einstellen.

Es wird nicht besonders genau sein, insbesondere auf einem ausgelasteten Server, kann aber nur einen ziemlich guten Hinweis geben, insbesondere wenn Sie es mit anderen Zählern koppeln, z. B. logische Festplattenaktivität, Größe des Kernel-ausgelagerten Pools usw.

Wenn eine höhere Zeitgenauigkeit oder eine längere Dauer erforderlich ist, können Sie die Protokollierung jederzeit aktivieren.

Koppeln Sie dies mit einem Prüfsummen-Dienstprogramm, um sicherzustellen, dass die Dateien identisch sind.

Ich entschuldige mich dafür, dass ich das Fenster im folgenden Screenshot gequetscht habe. Ich wollte nicht, dass das Bild Bildlaufleisten auf SF generiert, aber Sie können den Effekt von 60/60000 grob sehen, wie oben beschrieben. Entschuldigen Sie auch den Mangel an nützlichen Daten in der Grafik. Ich habe sie offensichtlich nicht lange genug laufen lassen, aber Sie haben die Idee.

Leistungsüberwachung

* Ich bin mir sicher, dass dies auch für Windows Server 2008 R2 gilt, habe jedoch derzeit keine Box zum Testen.

Bryan
quelle