事前キャッシュされたファイルシステムのファイルリスト

事前キャッシュされたファイルシステムのファイルリスト

ext4ファイルシステムでは、ファイルとディレクトリのリストがどこにあり、どの形式で保存されているかを知りたいです。問題は、Nautilus、Krusader、またはファイルマネージャを使用してディレクトリを起動した後、最初にディレクトリにアクセスしようとするたびに非常に遅くなることがあることです。私のハードドライブにアクセスするのを見て、これは遅いハードドライブが原因であると仮定します。そのため、ブート時にシステムのファイルの完全なリストを事前にキャッシュし、RAMキャッシュに保存してシステムの実行中にアンロードされないようにします(私の場合はUbuntu 14.04)。

ファイル全体のファイルとディレクトリのリストをキャッシュに事前にキャッシュしてアーカイブできますか?

vmtouchにすればいいと思いますが、目標が何なのかわかりませんね。

答え1

実際にファイルリストをスキャンしていますが、遅いです。次のようにする必要があります。

find /home >/dev/null &

つまり、ファイルを/home。おそらくそれほど価値がないでしょう。

答え2

ディレクトリを表示するには、これらのファイルマネージャは少なくともディレクトリからファイル名のリストとファイル形式、その他のメタデータを検索する必要があります。これらは同じ呼び出しですls -l。さらに、ユーティリティなどの一部のファイルマネージャはファイルの内容を調べて、ファイルの内容に関するより正確な情報を提供することがありますfile。また、特定のファイル形式(画像など)のプレビューを構築し、アイコンがバンドルされている複数のファイル形式からアイコンを抽出しようとすることもできます。

速度が遅すぎる場合は、より少ない情報を表示するように設定してみてください。

ファイル名とメタデータを事前に読むには、次のようにします。

find ~ -type f >/dev/null

ファイルの先頭より先に読み取るには、次のようにします。

find ~ -exec file {} + >/dev/null

私はこれをお勧めしません。これは時間がかかり、決して未使用の多くの情報をメモリに保存します(今日はすべてのファイルにアクセスできないため)。オペレーティングシステムのキャッシュアルゴリズムを推測することはしばしば非生産的です。

関連情報