web-dev-qa-db-ja.com

rm -rfは非常に遅く、サーバーの速度が低下します

私はrm -rf foldername25KBのファイルが10,000個含まれているフォルダを削除しようとしています。

質問なぜそんなに時間がかかるのですか(約30分)?

htopのCPU使用率が非常に低いのに、サーバーが極端に遅くなったのはなぜですか?プロセスは0.0%のCPUと0.2%のMEMしか使用していませんか?しかし、どういうわけか、負荷の平均は10です!

htop

enter image description here

iotop

enter image description here

1
Nyxynyx

CPU負荷を減らすためにプロセスをNiceし、ディスクのI/O負荷を減らすためにプロセスをioniceする必要があります。

ionice -c 3 Nice -n 19 echo foo

これにより、最も好ましくないCPUおよびI/Oスケジューリングで実行されるプロセスが作成されます。

あなたはで確認することができます:

ionice -p 19574
2
Brandon Philips

多くの小さなファイルは、通常、ファイルシステム/ハードドライブでは困難です(読み取り/書き込みヘッドは、各ファイルを見つけるためだけにあらゆる場所でスラッシュする必要があり、ファイルが非常に小さいため、この影響を推定します)。それか、HDDがすでに実行していることがたくさんあるか、失敗しています。

Nice -n 19 rm -rf directory

これは、最も低い優先度で「rm」を実行します。

1
SnakeDoc