12〜200 MBのファイルがあります。それらの1つを別のドライブにコピーするには20秒かかります。すべてを一度にコピーしようとすると、最初に5分かかると言われ、それから何時間も何日もかかります。
XFCEでThunarを介してファイルをコピーしていますが、コマンドラインを使用して同様の問題が発生したことを覚えています。ファイルを1つずつコピーする以外に、なぜこれが発生し、それを解決するために何ができますか?
12〜200 MBのファイルがあります。それらの1つを別のドライブにコピーするには20秒かかります。すべてを一度にコピーしようとすると、最初に5分かかると言われ、それから何時間も何日もかかります。
XFCEでThunarを介してファイルをコピーしていますが、コマンドラインを使用して同様の問題が発生したことを覚えています。ファイルを1つずつコピーする以外に、なぜこれが発生し、それを解決するために何ができますか?
回答:
これはLinuxカーネル自体の既知の問題であり、古くから知られていますが、まだ誰もこの問題に取り組んでいません。
現在、速度を上げてから正規化するWindowsを使用する以外に、修正や既知の回避策はありません。このバグは非常に優先度の高い問題であると思いますが、プログラマは同じように感じていません。Linuxから私を遠ざけ始めているのは、このバグだけです。
参照:
転送速度を監視するには、rsyncを試してください。例えば:
rsync -PSauv sourcedir/* destdir/
転送速度の低下が実際に見られる場合は、ファイルのサイズが大きいだけでなく、他にもいくつかの点を検討する必要があります。
ディスクがI / Oバウンドの場合、問題が発生します。これは、フラッシュドライブまたは外部USBデバイスに大量に書き込むときによく見られます。
両方のディスクをテストしhdparm -Tt <device>
て、一方が本来の速度よりも大幅に遅いか、I / Oの問題を引き起こす可能性がある他のデバイスよりも劇的に遅いかどうかを確認します。
dmesgの出力とSMARTステータスをチェックして、明らかなディスクエラーがないことを確認します。またbadblocks -n
、SMART以外のドライブでディスクエラーが疑われるかどうかを検討することも
できます。
ディスクがスラッシングまたは最適以下のパフォーマンスを発揮する理由はたくさんありますが、問題を測定できるまで、問題が何であるかはわかりません。:)
また、ファイルコピープロセスもLinuxによって何らかの形でキャッシュされることに注意してください。1つのファイル(200 MBのファイルであっても)を取り出して別の場所にコピーを開始すると、Linuxはファイル全体をメモリにキャッシュして、新しい場所に書き込みます。次に、そのファイルを再度コピーして他のファイルの束を選択すると、最初のファイルはすでにキャッシュされており、おそらく「読み取り部分」全体をスキップしますが、他のファイルは最初にソースから読み取られ、次にソースに書き込まれます/ destinations。この機能は、無限の転送速度と同様の奇妙な結果につながる可能性があるため、以前の追跡メカニズムによって無効にされる可能性のある測定を信頼しないでください。
SliTazのコピーをCD / USBに書き込みます。
これは本当に古いマシンで使用するように設計されており、RAMにあるため非常に高速に動作します。インストールする必要はありません。ライブで実行するだけです。USBがマウントされている場合は、USBを表示し、必要なものをコンピューターにコピーできます。転送速度は安定しており、高速であることがわかりました。