7.4. LVM 選択基準の定義
選択基準は、<field> <operator> <value> 形式の一連のステートメントであり、比較演算子を使用して特定のフィールドの値を定義します。選択基準に一致するオブジェクトが処理または表示されます。オブジェクトは、物理ボリューム (PV)、ボリュームグループ (VG)、または論理ボリューム (LV) です。ステートメントは、論理演算子とグループ化演算子によって結合します。
選択基準を定義するには、-S または --select オプションの後に 1 つまたは複数のステートメントを使用します。
-S オプションは、各オブジェクトに名前を付けるのではなく、処理するオブジェクトを記述することによって機能します。これは、多くのオブジェクトを処理する場合や、各オブジェクトを個別に検索して名前を付けることが難しい場合や、複雑な特性セットを持つオブジェクトを検索する場合に役立ちます。-S オプションは、多くの名前を入力しなくても済むようにショートカットとして使用することもできます。
フィールドと使用可能な演算子の完全なセットを表示するには、lvs -S help コマンドを使用します。lvs をレポートまたは処理コマンドに置き換えると、そのコマンドの詳細が表示されます。
-
レポートコマンドには、
pvs、vgs、lvs、pvdisplay、vgdisplay、lvdisplay、およびdmsetup info -cが含まれます。 処理コマンドには、
pvchange、vgchange、lvchange、vgimport、vgexport、vgremove、およびlvremoveが含まれます。pvsコマンドを使用した選択基準の例次の
pvsコマンドの例では、名前に文字列nvmeが含まれる物理ボリュームのみが表示されます。pvs -S name=~nvme
# pvs -S name=~nvme PV Fmt Attr PSize PFree /dev/nvme2n1 lvm2 --- 1.00g 1.00gCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次の
pvsコマンドの例では、myvgボリュームグループ内の物理デバイスのみが表示されます。pvs -S vg_name=myvg
# pvs -S vg_name=myvg PV VG Fmt Attr PSize PFree /dev/vdb1 myvg lvm2 a-- 1020.00m 396.00m /dev/vdb2 myvg lvm2 a-- 1020.00m 896.00mCopy to Clipboard Copied! Toggle word wrap Toggle overflow
lvsコマンドを使用した選択基準の例次の
lvsコマンドの例では、サイズが 100 m より大きく 200 m 未満の論理ボリュームのみが表示されます。lvs -S 'size > 100m && size < 200m'
# lvs -S 'size > 100m && size < 200m' LV VG Attr LSize Cpy%Sync rr myvg rwi-a-r--- 120.00m 100.00Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の
lvsコマンドの例では、名前にlvolと 0 から 2 までの任意の数字が含まれる論理ボリュームのみが表示されます。lvs -S name=~lvol[02]
# lvs -S name=~lvol[02] LV VG Attr LSize lvol0 myvg -wi-a----- 100.00m lvol2 myvg -wi------- 100.00mCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次の
lvsコマンドの例では、raid1セグメントタイプを持つ論理ボリュームのみが表示されます。lvs -S segtype=raid1
# lvs -S segtype=raid1 LV VG Attr LSize Cpy%Sync rr myvg rwi-a-r--- 120.00m 100.00Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- 高度な例
選択基準を他のオプションと組み合わせることができます。
次の
lvchangeコマンドの例では、アクティブな論理ボリュームにのみ特定のタグmytagを追加します。lvchange --addtag mytag -S active=1
# lvchange --addtag mytag -S active=1 Logical volume myvg/mylv changed. Logical volume myvg/lvol0 changed. Logical volume myvg/lvol1 changed. Logical volume myvg/rr changed.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の
lvsコマンドの例では、名前が_pmspareと一致しないすべての論理ボリュームを表示し、デフォルトのヘッダーをカスタムのものに変更します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の
lvchangeコマンドの例では、role=thinsnapshotおよびorigin=thin1の論理ボリュームを、通常のアクティブ化コマンドの実行中にスキップするようにフラグ付けします。lvchange --setactivationskip n -S 'role=thinsnapshot && origin=thin1'
# lvchange --setactivationskip n -S 'role=thinsnapshot && origin=thin1' Logical volume myvg/thin1s changed.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の
lvsコマンドの例では、次の 3 つの条件すべてに一致する論理ボリュームのみが表示されます。-
名前に
_tmetaが含まれている。 -
ロールが
metadataである。 - サイズが 4m 以下である。
lvs -a -S 'name=~_tmeta && role=metadata && size <= 4m'
# lvs -a -S 'name=~_tmeta && role=metadata && size <= 4m' LV VG Attr LSize [tp_tmeta] myvg ewi-ao---- 4.00mCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
名前に