UUIDからLVM LV / VG / PV名を取得する

UUIDからLVM LV / VG / PV名を取得する

結果は{lv,vg,pv}display次のとおりです。

  • 名前
  • 普遍的に一意の識別子

特定のUUIDのLVM名を見つける方法は?

答え1

次のオプションを使用して、LVMコマンドの出力を直接フィルタリングできます-S

# pvs --noheadings -o name -S uuid=MtLb3p-MUle-8fyk-fy6m-z99n-V9mi-xxxxxx
  /dev/sdb3

これはVGとLVをvgs見つけるためにも機能します。lvs

出力の先頭にスペースを入れないようにするには、以下を追加します--config 'log{prefix=""}'

# pvs --noheadings -o name -S uuid=MtLb3p-MUle-8fyk-fy6m-z99n-V9mi-xxxxxx --config 'log{prefix=""}'
/dev/sdb3

答え2

太陽光発電用ただ、ブロックデバイスの一般的な場合があります。

$ source=UUID=MtLb3p-MUle-8fyk-fy6m-z99n-V9mi-xxxxxx
$ blkid -t "$source" -o device
/dev/sdb3

これは、すべてのブロックデバイス(およびLABEL=


興味深いことに、以下を/etc/fstab使用して検索できます。

source=$(findmnt -sno SOURCE --raw "$mount")

そして$source正しい形式でに渡されますblkid -t

答え3

{lv,vg,pv}sたとえば、次のコマンドを使用できますawk

$ uuid="MtLb3p-MUle-8fyk-fy6m-z99n-V9mi-xxxxxx" 
$ sudo pvs -o UUID,NAME --noheadings | awk "\$1 == \"$uuid\" { print \$2 }"
/dev/sdb3

関連情報