Es ist meistens deterministisch - Dateisysteme verwenden verschiedene Algorithmen, um den besten Ort für neue Daten zu bestimmen. Es ist jedoch nicht möglich, alle internen Zustände zu 100% zu duplizieren. Daher müssen Sie Folgendes berücksichtigen:
verschiedene Dateisysteme (ext4, btrfs, NTFS ...) verwenden unterschiedliche Zuordnungsalgorithmen,
das auch durch das Programm beeinflusst werden kann, das den Schreibvorgang ausführt (z. B. wird eine Datei, die langsam auf 100 MB wächst, manchmal anders zugewiesen als eine durch fallocate () erstellte Datei, die 100 MB auf einmal erstellt),
sowie andere Programme, die gleichzeitig auf die Festplatte schreiben, da die Zuordnung der Datei B davon abhängt, ob die Datei A bereits geschrieben wurde oder nicht (alle Determinismen gehen hier weg, wenn Sie ein Multi-Core- oder Multi-CPU-System haben);
Größe und Speicherort der vorhandenen Dateien;
Größe und Speicherort der gelöschten Dateien (zB bei log-strukturierten Dateisystemen werden nur die Daten weitergeleitet)
verschiedene Festplattentypen (Dateisysteme kümmern sich beim Schreiben auf Solid-State-Festplatten möglicherweise weniger um die Fragmentierung als um Magnetplatten).
physische Korruption (wenn ein Sektor beschädigt wird, wählt das Dateisystem möglicherweise die gesamte Datei an einem anderen Ort, anstatt nur diesen einen Sektor zu überspringen);
Und schließlich, auch wenn beide Beispielcomputer 1: 1-Kopien des rohen Datenträgerinhalts haben,
- Einige Dateisysteme können zufällige Entscheidungen treffen, wenn dies in den Algorithmus geschrieben wird. Von einem kurzen Grep aus scheint es so, als würde zumindest Ext4 die Zufallsauswahl als Fallback verwenden, wenn alle Optionen gleich sind.