cp/rsync kommen beim Kopieren auf USB/Micro SD zum Stillstand

cp/rsync kommen beim Kopieren auf USB/Micro SD zum Stillstand

Ich versuche, etwa 20 GB Musik von meinem Arch Linux-Laptop über ein USB-Lesegerät auf eine Micro-SD-Karte zu übertragen. Der Vorgang beginnt problemlos; die ersten ~50 Songs dauern insgesamt eine Sekunde, obwohl das, soweit ich gelesen habe, nur mit dem Caching (oder so etwas ...) zu tun hat und nicht die tatsächliche Geschwindigkeit darstellt. Dann geht es auf eine Geschwindigkeit, die ich als angemessen bezeichnen würde, wobei jeder Song zwischen einer und fünf Sekunden dauert (die Dateien sind verlustfrei, also im Durchschnitt vielleicht ~15 MB).

Nach ein paar hundert Songs wird es jedoch völlig langsamer. Die Übertragung einer einzelnen Datei dauert etwa fünf Minuten, und das ist eine vorsichtige Schätzung. Ich habe es über Nacht laufen lassen und es wurden kaum Fortschritte erzielt!

Die Karte ist eine kürzlich gekaufte SanDisk der Klasse 10, und ich habe versucht, sie sowohl mit einem USB- als auch mit einem normalen SD-Kartenadapter zu verwenden. Daher möchte ich einige Lösungen auf Betriebssystemebene ausprobieren, bevor ich die physische Seite der Dinge näher untersuche. Ich habe auch alle drei USB-Anschlüsse an meinem Laptop ausprobiert und bei allen tritt das gleiche Problem auf. Ich habe versucht, den normalen cp -rv ~/music /mnt/sdBefehl sowie zu verwenden rsync -rvh ~/music /mnt/sd, und bei beiden passiert das Gleiche. Wenn ich zu Testzwecken an ein Ziel auf derselben Partition kopiere, ist alles in Ordnung, es liegt also definitiv daran, dass es sich auf einer anderen Partition befindet. Ich habe auch den geposteten Vorschlag ausprobiertHierwas nicht geholfen hat.

Meine Kernelversion ist 4.10.9.

Irgendwelche Ideen?

Antwort1

Das Problem liegt meist an der RAM-Kapazität oder den IO-Lese-/Schreibzugriffen. Wenn Sie Dateien kopieren, werden die Daten in Ihrem RAM gespeichert und dann an das Ziel kopiert. Da Sie große Dateien von bis zu 20 GB kopieren, könnte das Problem am begrenzten RAM liegen. Wenn kein RAM vorhanden ist, könnte es aufgrund der IO-Lese-/Schreibzugriffe zu einem Engpass kommen (dies sollte jedoch nicht zu einem Stillstand führen). Überprüfen Sie die Statistiken, wenn eine CPU-Überlastung vorliegt. Verwenden Sie vorzugsweise den Befehl „sar -P ALL“, um die CPU-Auslastungsstatistiken zu überprüfen. Versuchen Sie auch, die Statistiken zur RAM-Nutzung zu überprüfen.

verwandte Informationen