ブロックデバイスをキャッシュする方法(デバイスマッパー用)

ブロックデバイスをキャッシュする方法(デバイスマッパー用)

問題/観察された効果

ページキャッシュは、開いていないブロックデバイスを無視するようです。さらに悪いことは、キャッシュされたデバイスを使用するデバイスマッパー(DM)デバイスから読み取られたデータがまったくキャッシュされないことです(オンになっていない場合)。

テストにこのコマンドを(繰り返し)使用します。

time dd if=/dev/sda11 of=/dev/null bs=50M count=1

sda11キャッシュは、読み取り用に開く(exec 4</dev/sda11)、マウントする、またはデバイスマッパーデバイスの一部として()を使用する場合にecho "0 1427456 linear /dev/sda11 0" | dmsetup create cache1機能します。

ただし、sda11の上に/dev/mapper/cache1を作成すると、最初の読み取りと2番目の読み取りの両方がキャッシュから出ません(とにかくオンになっていない場合)。

やる気

私がこれを行う理由は、暗号化されたボリュームがあり、私(KDE)システムを起動するのにかなり長い時間がかかるからです。暗号化されたボリュームを開く前にいくつかの手動準備を行ったので、今回は暗号化されたデバイス(LVM)からデータを読み取ってKDEの起動速度を上げることができると思いました。ただし、言及されたキャッシュの問題の場合、これは役に立ちません。

質問

後で作成されたDM暗号化デバイスを介して(埋められた)キャッシュを介してLVからデータを読み取る方法はありますか?

関連情報