Ich wurde mit der Migration einer SharePoint-Dokumentbibliothek in eine andere Dokumentbibliothek beauftragt. Um die Ausfallzeiten so gering wie möglich zu halten, habe ich die beiden Dokumentbibliotheken mit OneDrive auf meinen PC synchronisiert und spiegele sie mit Robocopy zwischen den beiden lokalen Kopien. Ziemlich routinemäßiges Zeug für Netzwerkfreigaben.
Ich bemerkte jedoch, dass Robocopy beim erneuten Ausführen des Spiegelbefehls erneut viele Dateien kopierte. Ich konnte eine Handvoll Veränderungen erwarten, aber nicht Tausende. Außerdem hat Robocopy die Dateien als "geändert" gekennzeichnet, was IMO ein sehr ungewöhnlicher Kopiergrund für Robocopy ist. Dies bedeutet, dass der Zeitstempel unverändert bleibt, sich aber die Größe der Datei geändert hat.
Eine weitere Diagnose ergab, dass es sich nur um Office-Dokumente handelte, z. pptx als wurden nochmal kopiert. Andere Dateitypen wie PDF- und Grafikdateien werden einmal und nicht erneut kopiert.
Ich habe es endlich auf diese Beobachtung zurückgeführt:
- Kopieren Sie eine Datei mit (beispielsweise) cmd.exe copy nach OneDrive
- Sehen Sie sich die Dateigröße sofort in OneDrive an und sie stimmt mit der Originalgröße überein
- Warten Sie, bis OneDrive die Synchronisierung durchgeführt hat, und überprüfen Sie die Dateigröße erneut
Die Größe hat sich geändert. Hier ist ein PowerShell-Skript, das eine Datei kopiert, die Größe sofort abruft, 15 Sekunden (für die Synchronisierung) wartet und die Größe erneut abruft.
$SourceFile = "S:\Temp\Helios\Library\Example.pptx"
$TargetFile = "C:\Users\rob.nicholson\Helios Medical Communications\Library - Documents (unused)\Example.pptx"
Copy-Item $SourceFile $TargetFile
$Length1 = (Get-Item $SourceFile).Length
$Length2 = (Get-Item $TargetFile).Length
Start-Sleep 15
$Length3 = (Get-Item $TargetFile).Length
Write-Host "Orignal size: $Length1"
Write-Host "After copy size: $Length2"
Write-Host "After sync size: $Length3"
Dies ist die Ausgabe:
Source size: 1996810
After copy size: 1996810
After sync size: 1997141
Kann jemand erklären, warum sich die Dateigröße ändert? Eine andere Beobachtung ist, dass OneDrive "Uploading" sagt und dann sofort "Downloading" - wenn sich die Dateigröße ändert.
Erschwert die Verwendung von Synchronisierungstools mit OneDrive. Natürlich haben Google Drive oder Dropbox nicht dasselbe Problem.
Ein letzter Hinweis: OneDrive "On-Demand" ist aktiviert.