現在、UbuntuのインストールにLVMキャッシュが設定されています。https://rwmj.wordpress.com/2014/05/22/using-lvms-new-cache-feature/。 (操作するには、鮮やかな/提案パッケージをインストールする必要がありましたが、うまくいきました。)
これにより、論理ボリュームの1つをキャッシュボリュームに正常に変換できました。
# lvconvert --type cache --cachepool anson-TA75MH2/lv_cache anson-TA75MH2/root
Logical volume anson-TA75MH2/root is now cached.
ただし、これを行った後は、キャッシュパーティションのサイズを変更することはできません。
root
キャッシュパーティション(この場合はファイルシステムのルートになるため、名前付き)を拡張しようとすると、次のエラーメッセージが表示されます。
# lvextend anson-TA75MH2/root -L +250G
Unable to resize logical volumes of cache type.
サイズ変更できるようにキャッシュを再びオフにするにはどうすればよいですか?
参考までに:
sdaは私の主要な1TBハードドライブで、大きなLVMパーティションとlvmに移動する予定の縮小ext4パーティションが含まれています。 sdbは、500MBのext2 /bootパーティション、大規模なlvmパーティション、および8GBのスワップスペースを備えた手頃な価格の32GB SSDです。
# vgs
VG #PV #LV #SN Attr VSize VFree
anson-TA75MH2 2 3 0 wz--n- 803.46g 499.96g
# pvs
PV VG Fmt Attr PSize PFree
/dev/sda1 anson-TA75MH2 lvm2 a-- 782.47g 499.96g
/dev/sdb2 anson-TA75MH2 lvm2 a-- 21.00g 0
# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
home anson-TA75MH2 -wi-ao---- 250.47g
lv_cache anson-TA75MH2 Cwi---C--- 20.96g
root anson-TA75MH2 Cwi-aoC--- 32.00g lv_cache [root_corig]
または、同じキャッシュを使用して複数のLVをキャッシュする方法がある場合は、その方法が優先されます(オフにする方法を知りたい)。しかし、試してみると拒否されます。
# lvconvert --type cache --cachepool anson-TA75MH2/lv_cache anson-TA75MH2/home
lv_cache is already in use by root
答え1
lvconvert --uncache anson-TA75MH2/root
より良いようです
lvremove anson-TA75MH2/lv_cache
しかし、マニュアルページに示すように、これが主なオプションです。
答え2
lvmcache(7) マンページでは、元のボリュームを削除せずにキャッシュプールを削除する方法について説明します。
リンク元LVを削除せずにキャッシュプールLVを削除します。
必要に応じて、キャッシュプールのデータを元のLVに書き戻し、キャッシュプールのLVを削除し、元のLVをキャッシュされていません。
lvremove VG/CachePoolLV
例:
# lvs vg LV VG Attr LSize Pool Origin cache0 vg Cwi---C--- 10.00g lvol0 vg Cwi-a-C--- 100.00g cache0 [lvol0_corig] # lvremove vg/cache0 # lvs vg LV VG Attr LSize Pool Origin lvol0 vg -wi-a----- 100.00g
それで私が知っている限りそうしますlvremove anson-TA75MH2/lv_cache
。これを行うには、最初からキャッシュプールを再作成する必要がありますが、大丈夫です。ちょっと面倒だけです。 (誰もより良い投稿を投稿しない場合は、今後数分でこれを行う予定です。)