14 ブロックデバイスの検出

ファイルシステムが検出されるのと同様の方法で、ブロックデバイスとそのタイプも検出できます。

アイテムキー

ディスカバリ ルールで使用するアイテムキーは次のとおりです。

vfs.dev.discovery

このアイテムはLinuxプラットフォームでのみサポートされています。

このディスカバリアイテムを使用して、次のようなディスカバリルールを作成できます。

  • フィルター: {#DEVNAME} matches sd[\D]$ - 「sd0」、「sd1」、「sd2」、... という名前のデバイスをディスカバリする
  • フィルター: *{#DEVTYPE} matches disk AND {#DEVNAME} does not match `^loop.`** - 名前が「loop」で始まらない、ディスクタイプのデバイスをディスカバリする

サポートされているマクロ

このディスカバリキーは、ブロックデバイスの名前とタイプをそれぞれ識別する{#DEVNAME}と{#DEVTYPE}の2つのマクロを返します。次に例を示します。

[ 
   { 
      "{#DEVNAME}":"loop1",
      "{#DEVTYPE}":"disk"
   },
   { 
      "{#DEVNAME}":"dm-0",
      "{#DEVTYPE}":"disk"
   },
   { 
      "{#DEVNAME}":"sda",
      "{#DEVTYPE}":"disk"
   },
   { 
      "{#DEVNAME}":"sda1",
      "{#DEVTYPE}":"partition"
   }
]

ブロックデバイスの検出では、vfs.dev.read[]およびvfs.dev.write[]アイテムと{#DEVNAME}マクロを使用してアイテムのプロトタイプを作成できます。次に例を示します。

  • "vfs.dev.read[{#DEVNAME},sps]"
  • "vfs.dev.write[{#DEVNAME},sps]"

{#DEVTYPE}は、デバイスのフィルタリングを目的としています。