Der Kopierdialog bleibt bei 0 Sekunden übrig ...
Wenn ich versuche, große Dateien auf mein USB-Laufwerk (in einem beliebigen Format) zu kopieren, stoppt es immer im letzten Moment. Es endet nach langer Zeit .
Ich habe Ask Ubuntu nach ähnlichen Posts durchsucht und viele bekommen , aber keiner von ihnen hat gute Lösungen.
Also ... Gibt es ein alternatives Kopiertool wie Teracopy unter Windows?
Oder gibt es irgendwelche Korrekturen, die ich tun kann?
Antworten:
Sie sollten sich darüber nicht zu viele Sorgen machen.
Möglicherweise ist Ihr USB-Stick von "geringerer Qualität".
Die Dialogausgabe bezüglich der Zeit ist irreführend.
Andere Kopiertools weisen möglicherweise ein anderes Ausgabeverhalten auf,
verbessern jedoch nicht die Schreibgeschwindigkeit des USB-Laufwerks.
Am wichtigsten ist jedoch, dass die Kopieraktion endlich erfolgreich ist.
Sie können die Eingabe- / Ausgabe-Scheduler von Festplatten optimieren.
Installieren Sie
gksu
( falls Sie dies noch nicht getan haben), um Dateien mitgedit
dem Stammverzeichnis zu bearbeiten :Optimieren Sie nun die Priorität aller laufenden Prozesse für verschiedene Festplattentypen:
Fügen Sie die folgenden Zeilen in diese leere Datei ein und speichern Sie die Datei anschließend:
Die von Ihnen vorgenommenen Änderungen werden nach einem Neustart des Betriebssystems wirksam.
Außerdem ... ist in den Ubuntu-Repositories eine alternative Kopierlösung verfügbar:
Starten Sie nun das Tool von einem Terminal aus, um Dateien und Ordner zu vergleichen oder zu kopieren:
dirdiff
ist eine GUI fürdiff
und kann bis zu 5 Bäume verarbeiten. Es wird ein Hauptfenster mit einer Liste von Dateien angezeigt, die sich zwischen den Bäumen unterscheiden, mit farbigen Quadraten, die das relative Alter der Versionen angeben. In einem Menü können Sie die Unterschiede zwischen zwei beliebigen Versionen in einem anderen Fenster anzeigen. In einem anderen Menü können Sie Dateien und Ordner von einem Baum in einen anderen kopieren.Zusammenfassung: Am relevantesten ist die Qualität des USB-Laufwerks und seine Schreibgeschwindigkeit!
quelle
Der Grund dafür, dass das Kopieren so erfolgt, ist, dass die Schreibvorgänge auf das USB-Laufwerk asynchron sind .
Wenn Sie eine Datei kopieren, wird sie tatsächlich in den Puffer des USB-Laufwerks kopiert, der sich im RAM Ihres Computers befindet. Der erste Teil der Kopie ist sehr schnell, da er nur in den Puffer gelangt. Die Daten werden gelöschtviel langsamer vom Puffer zum USB-Laufwerk. Sobald der Puffer voll ist, muss er warten, bis ein Teil der Daten auf die Festplatte geschrieben wurde, bevor er weiter im Puffer abgelegt werden kann. Die Kopie wird dann sofort langsamer, effektiv auf die Geschwindigkeit des USB-Laufwerks. Sobald die gesamte Datei in den Puffer gelegt wurde, scheint die Datei kopiert worden zu sein. Es wurden jedoch nicht alle Daten aus dem Puffer auf das USB-Laufwerk selbst geleert. Einige Kopierprogramme kehren einfach zurück und lassen das Spülen im Hintergrund weiterlaufen. Einige warten, bis alle Daten gelöscht wurden, weshalb sie für einige Zeit zu 100% aktiviert bleiben.
Sie können die Festplatte in den synchronen Modus schalten, dh alle Daten werden sofort auf den USB-Stick geschrieben, ohne den Puffer zu verwenden. Dies vermittelt den Eindruck einer reibungsloseren Datenübertragung, kann jedoch zu einer allgemeinen Geschwindigkeitsreduzierung führen.
Wenn Sie die Festplatte manuell über die Befehlszeile bereitstellen, können Sie sie hinzufügen
-o sync
.Wenn Sie es mit fstab mounten, können Sie die
sync
Option hinzufügen .Wenn Sie sich darauf verlassen, dass Ubuntu es für Sie bereitstellt, wenn Sie über die GUI darauf zugreifen, können Sie die Bereitstellungsoptionen über die Befehlszeile ändern, sobald es bereitgestellt ist:
quelle
Das Problem ist wahrscheinlich, dass die Datei vollständig gelesen und gespeichert wird, bevor sie vollständig auf das Ziellaufwerk geschrieben wird.
Dies bedeutet nicht, die Frage genau zu beantworten, aber
pv
bei großen Dateien kann eine Problemumgehung über die Befehlszeile verwendet werden:Wann immer man eine große Datei kopieren muss:
Es ist zu beachten, dass dies unter einem ähnlichen unerwünschten Pufferproblem leidet, wenn es in einem Rohr verwendet wird; Wenn dies der Fall ist, begrenzt ein Fix die Übertragungsrate auf etwas, das etwas über der Schreibgeschwindigkeit des Ziellaufwerks liegt:
quelle
Es gibt eine Reihe von Alternativen. Sie können den Befehlszeilenansatz verwenden:
cp *source* *target*
Dabei ist Quelle die Datei, die Sie kopieren möchten, und Ziel die Datei oder der Ordner, in den Sie kopieren möchten. Weitere Optionen finden Sie unter https://softwarerecs.stackexchange.com/
quelle
Dies liest aus Ihrer
if
Datei und schreibtof
in 64-MB-Blöcken in die Datei. Warten Sie, bis jeder Block ausgeschrieben ist, bevor Sie mit dem nächsten beginnen. Das Dienstprogramm, das Sie verwenden, liest höchstwahrscheinlich nur die Datei in den Speicher und sendet sie dann an die Festplatte (und es ist nicht abzusehen, wie viele Bytes gleichzeitig ausgeführt werden). Das Schreib-Caching kann sich jedoch im USB-Dongle selbst befinden. Die Geschwindigkeit von 60 MB pro Sekunde, die Sie erhalten, ist also die Übertragungsrate über die USB-Verbindung zum internen Cache des Dongles. Aber das ist nicht wahrscheinlich, es sei denn, es ist ein USB3-Dongle. USB2 hat nicht genug Durchsatz, um 60 MB pro Sekunde zu verarbeiten.quelle
All dies ist nicht erforderlich. Öffnen Sie einfach ein Terminalfenster, wenn bei der Übertragung noch 0% angezeigt werden, und geben
sync
Sie ein. Auf den Manpages werden mit dem Befehl sync die Dateisystempuffer geleert, aber natürlich werden nur diejenigen gelöscht, für die Sie die Rechte haben. Wenn Sie sie alle spülen möchten, geben Sie einsudo sync
quelle