回答:
現代のファイルシステム、特にマルチユーザーやマルチタスクのユースケースで効率的になるように設計されたファイルシステムは、ファイルシステムがほぼ完全になるまでデータを断片化しないというかなり適切な役割を果たします(「ほぼ完全」に近い正確な図はありません。 "マークは、ファイルシステムのサイズ、ファイルサイズの分布、アクセスパターンの種類(85%から95%の数字は一般的に引用されている)、またはファイルの作成と書き込みのパターンが異常であるか、ファイルシステムが非常に古いので、多くの「アクション」を見てきました。これには、ext2 / 3/4、reiser、btrfs、NTFS、ZFSなどが含まれます。
現在、ext3または4を最適化するカーネル/ファイルシステムレベルの方法はありません(詳細については、http://en.wikipedia.org/wiki/Ext3#Defragmentationを参照)。ext4は間もなくオンラインになる予定です。デフラグ。
ユーザー向けのツール(http://vleu.net/shake/など)があります。ウィキペディアの記事に記載されている他のファイル)をコピーまたは再書き込みして、個々のファイルまたはファイルセットを最適化しようとします-十分な空き容量のブロックがある場合、通常、ファイルに連続したブロックが与えられます。これは決してファイルが互いに近いことを保証するものではありませんが、大きなファイルのペアでシェイクを実行すると、2つのファイルがデフラグされますが、ディスク上のお互いの近くにはありません。マルチユーザーファイルシステムでは、ドライブヘッドがさまざまなユーザーにサービスを提供するためにあらゆる場所で反転しているため、ファイルの相互の局所性はそれほど重要ではありません(ファイル自体の断片化ほど重要ではありません)。
時間の経過とともに断片化が激しくなり、現在かなりの空き容量があるファイルシステムがある場合shake
、そのすべてのファイルに対して同様に実行すると、探している効果が得られる可能性があります。別の方法は、すべてのデータを新しいファイルシステムにコピーし、元のファイルシステムを削除してから、再度コピーすることです。これはほぼ同じように役立ちますが、shake
大量のデータに対してはより高速になる場合があります。
少量の断片化については、心配しないでください。私は、通常の操作のいくつかのライフタイムで(より効率的なディスクアクセスにより)節約するよりも、デフラグの進行状況バーの監視に多くの時間を費やす人を知っています!
ureadahead
、最近のUbuntuはデフォルトでやる構築するよう(参照、ubuntuforums.org/showthread.php?t=1434502同様の効果を達成するために、より多くの情報のため)。Linuxのブートシーケンスの遅延の一部は、disroのブートセットアップがこれをサポートしている場合(Debianの/ etc / defaults / rcでCONCURRENCY = shellを設定)、同様の調整を行うと、可能な限りサービスを同時に開始するように要求することで軽減できます。変更を加えて変更を加えているかどうかを確認するには、bootchart.orgを使用して、後で調整する前に何を行うかを示します。
e2defrag
、そのようなパッキングを達成するためにそれを実験して復活させました。あなたはでそれを見つけることができますlaunchpad.net/e2defrag。
/etc/defaults/rc
が、持っていない/etc/default/rcS
のdebian 6に
e2defrag
はExt3をよりよくサポートしshake
ますか?