7.4. LVM 選択基準の定義


選択基準は、<field> <operator> <value> 形式の一連のステートメントであり、比較演算子を使用して特定のフィールドの値を定義します。選択基準に一致するオブジェクトが処理または表示されます。オブジェクトは、物理ボリューム (PV)、ボリュームグループ (VG)、または論理ボリューム (LV) です。ステートメントは、論理演算子とグループ化演算子によって結合します。

選択基準を定義するには、-S または --select オプションの後に 1 つまたは複数のステートメントを使用します。

-S オプションは、各オブジェクトに名前を付けるのではなく、処理するオブジェクトを記述することによって機能します。これは、多くのオブジェクトを処理する場合や、各オブジェクトを個別に検索して名前を付けることが難しい場合や、複雑な特性セットを持つオブジェクトを検索する場合に役立ちます。-S オプションは、多くの名前を入力しなくても済むようにショートカットとして使用することもできます。

フィールドと使用可能な演算子の完全なセットを表示するには、lvs -S help コマンドを使用します。lvs をレポートまたは処理コマンドに置き換えると、そのコマンドの詳細が表示されます。

  • レポートコマンドには、pvsvgslvspvdisplayvgdisplaylvdisplay、および dmsetup info -c が含まれます。
  • 処理コマンドには、pvchangevgchangelvchangevgimportvgexportvgremove、および lvremove が含まれます。

pvs コマンドを使用した選択基準の例

  • 次の pvs コマンドの例では、名前に文字列 nvme が含まれる物理ボリュームのみが表示されます。

    # pvs -S name=~nvme
      PV           Fmt  Attr PSize PFree
      /dev/nvme2n1 lvm2 ---  1.00g 1.00g
  • 次の pvs コマンドの例では、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.00m

lvs コマンドを使用した選択基準の例

  • 次の lvs コマンドの例では、サイズが 100 m より大きく 200 m 未満の論理ボリュームのみが表示されます。

    # lvs -S 'size > 100m && size < 200m'
      LV   VG   Attr       LSize   Cpy%Sync
      rr   myvg rwi-a-r--- 120.00m 100.00
  • 次の lvs コマンドの例では、名前に lvol と 0 から 2 までの任意の数字が含まれる論理ボリュームのみが表示されます。

    # lvs -S name=~lvol[02]
      LV    VG   Attr       LSize
      lvol0 myvg -wi-a----- 100.00m
      lvol2 myvg -wi------- 100.00m
  • 次の lvs コマンドの例では、raid1 セグメントタイプを持つ論理ボリュームのみが表示されます。

    # lvs -S segtype=raid1
      LV   VG   Attr       LSize   Cpy%Sync
      rr   myvg rwi-a-r--- 120.00m 100.00

高度な例

選択基準を他のオプションと組み合わせることができます。

  • 次の lvchange コマンドの例では、アクティブな論理ボリュームにのみ特定のタグ mytag を追加します。

    # 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.
  • 次の lvs コマンドの例では、名前が _pmspare と一致しないすべての論理ボリュームを表示し、デフォルトのヘッダーをカスタムのものに変更します。

    # lvs -a -o lv_name,vg_name,attr,size,pool_lv,origin,role -S 'name!~_pmspare'
      LV         VG      Attr       LSize Pool Origin Role
      thin1      example Vwi-a-tz-- 2.00g tp          public,origin,thinorigin
      thin1s     example Vwi---tz-- 2.00g tp   thin1  public,snapshot,thinsnapshot
      thin2      example Vwi-a-tz-- 3.00g tp          public
      tp         example twi-aotz-- 1.00g             private
      [tp_tdata] example Twi-ao---- 1.00g             private,thin,pool,data
      [tp_tmeta] example ewi-ao---- 4.00m             private,thin,pool,metadata
  • 次の lvchange コマンドの例では、role=thinsnapshot および origin=thin1 の論理ボリュームを、通常のアクティブ化コマンドの実行中にスキップするようにフラグ付けします。

    # lvchange --setactivationskip n -S 'role=thinsnapshot && origin=thin1'
      Logical volume myvg/thin1s changed.
  • 次の lvs コマンドの例では、次の 3 つの条件すべてに一致する論理ボリュームのみが表示されます。

    • 名前に _tmeta が含まれている。
    • ロールが metadata である。
    • サイズが 4m 以下である。
    # lvs -a -S 'name=~_tmeta && role=metadata && size <= 4m'
      LV         VG      Attr       LSize
      [tp_tmeta] myvg   ewi-ao---- 4.00m

関連情報

  • システム上の lvmreport(7) man ページ
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.