Windows-Kopieren ist seit Windows Vista ein echtes Chaos. Sogar Microsoft behauptet, sie hätten die Leistung verbessert, aus Benutzersicht ist dies nicht ganz sichtbar. Selbst bei einer einzelnen Datei erscheint im Kopierfenster zu viel Zeit zum 'Berechnen' und zum Beenden des Kopiervorgangs.
Gleichzeitig habe ich einige Dateien in Ubuntu Linux gesichert. Ich hatte das Gefühl, dass es sehr schnell ist. Könnte ein Gefühl sein, das durch schnellere Benutzeroberflächenaktualisierungen verursacht wird.
Ich habe vor ein paar Jahren einen informativen Beitrag von Jeff Atwood über Windows File Copying gelesen . aber was sind meine spezifischen Fragen
- Ist die Leistung von (Ubuntu) Linux-Dateien besser als die von Windows-7?
- Verwenden beide Algorithmen, Windows und Linux, mehrere Threads und Pipelining-Mechanismen, um die Geschwindigkeit zu verbessern? Wenn ja, welches ist besser?
xcopy
oder sogarrobocopy
. Viel besser. Mit letzterem können Sie beispielsweise zwei Durchgänge durchführen: Erstens, um alle Verzeichnisse zu erstellen, aber keine Dateien zu kopieren, und zweitens, um die tatsächlichen Dateien zu kopieren, wodurch keine Fragmentierung des Ziels verursacht wird.ext3/4
, was hier mit NTFS konkurriert. Sie können auch versuchen,reiserfs
undxfs
- beide sind für schnelle Operationen mit kleinen Dateien optimiert.Antworten:
Der
copy
in Windows integrierte Standard ist nicht sehr gut, aber Windows wird mit zwei erweiterten Befehlen ausgeliefert, die weitaus effizienter sind:xcopy
undrobocopy
. Besonders wenn Sie die volle Kontrolle über erweiterte Dateisystemfunktionen wie ACLs oder alternative Datenströme benötigen ,robocopy
ist dies das Werkzeug Ihrer Wahl.Wenn Sie beispielsweise eine große Verzeichnisstruktur kopieren, möchten Sie möglicherweise, dass das Ziel nicht fragmentiert wird . Der Standardaufruf von
robocopy
ist bereits recht gut, aber da Verzeichniseinträge beim Erstellen von Unterverzeichnissen aktualisiert werden, können Sie immer noch fragmentierte Verzeichnisse abrufen. Um dies zu verhindern, können Sierobocopy
zwei Durchgänge ausführen , von denen der erste nur die Zielverzeichnisstruktur ohne Kopieren von Dateiinhalten erstellt und der zweite die eigentlichen Dateikörper kopiert.Insgesamt
robocopy
ist es sehr effizient und kennt alle NTFS-Funktionen.quelle
/CREATE
Option werden leere Dateien und Unterverzeichnisse erstellt, die keinen Platz belegen und so das fortlaufende vollständige Ausschreiben der Verzeichniseinträge ermöglichen.Ein Teil der Geschwindigkeit, die Sie unter Ubuntu Linux sehen, ist wahrscheinlich das Zwischenspeichern von Dateien. Soweit mir bekannt ist, unternimmt die Dateikopie unter Linux keine Anstrengungen, um die Verwendung des Dateicaches zu minimieren.
Wenn Sie unter Linux eine Datei kopieren, die kleiner als 50% Ihres Arbeitsspeichers ist, wird die gesamte Datei in den Dateicache kopiert und dann, wenn es die Zeit erlaubt, auf die Festplatte geschrieben. Dies scheint sehr schnell zu sein, erzwingt jedoch, dass andere nützlichere Dateien aus dem Cache entfernt werden. Dies können Web-Cache-Dateien, E-Mails, Konfigurationsdateien, Schriftdateien usw. sein.
Windows XP verwendet, um ohne Rücksicht auf Dateicache auch zu kopieren. In Windows Vista hat Microsoft den Explorer jedoch so geändert, dass beim Kopieren eine begrenzte Menge an Dateicache verwendet wird . Dies verringert die Auswirkung großer Dateikopien auf den Rest des Systems. Es reduziert aber auch die Geschwindigkeit auch relativ kleiner Dateikopien auf die Geschwindigkeit der Festplatte.
quelle
Verwenden Sie in Windows Teracopy. Dadurch wird das allgemeine Dummheitsproblem des Explorers behoben.
In Ubuntu war das Kopieren von Dateien sehr schnell.
Das Dialogfeld "Dateioption" wird bei Verwendung von Wechseldatenträgern dennoch nicht ausgeblendet. Wenn Sie versuchen, das Laufwerk sofort nach dem Verschwinden des Dialogfelds sicher auszuwerfen, wird eine Fehlermeldung angezeigt. Daten kommen aber durch.
Update: Windows-Dateivorgänge sind bei der Integration mit Diensten und der Registrierung wahrscheinlich langsam. Nautilus (in Gnome) ist nur ein einfacher Prozess, oder er hat zumindest nicht die Ladevorgänge / Unterbrechungen, die der Explorer hat.
quelle
Das Verschieben und Kopieren von Dateien unter Linux ist natürlich ein schneller Vorgang. Der Grund, warum Sie Dateien so schnell verschieben und kopieren können, liegt darin, dass sich Quelle und Ziel in derselben Partition befinden. Die Operation muss nur die Inodes ändern. Das Verschieben von Dateien zwischen verschiedenen Partitionen ist immer noch sehr schnell (nur etwa eine Minute für eine 1-Gig-Datei). In Windows sind einige Schritte erforderlich, um Dateien an Ziele auf derselben Partition zu verschieben, da die Dateiverwaltung in Windows problematisch ist. (Denken Sie an die Dateifragmentierung und die Art und Weise, wie Windows Festplatten formatiert.)
quelle