xm create config.cfg
を使用してxendomUを開始しています。構成ファイル内には、ゲストに追加され、起動時に正常にアクセスできる多数の物理ブロックデバイス(LV)があります。ただし、将来のある時点で、xmblock-detachコマンドを使用してこれらのディスクの1つをホットプラグ解除できるようにする必要があります。ただし、このコマンドでは、デバイスのvbd IDを切り離す必要があり、起動時に「プラグイン」された特定のディスクのデバイスIDを見つける方法が見つかりません。どんな助けでも大歓迎です!
最終的には、ブロックリストにデバイスがゲストに追加された順序でリストされるという事実を使用してこれを行いました。この注文を保存している限り、このリストからvbd idを取得し、後でdomUから切り離すことができます。
xm block-list <dom>
の出力をdom0の物理デバイスに関連付ける「良い」方法を私は知りません。おそらく最善の方法は、xend.log
のDevController
エントリを解析することです。これにより、作成時点でのVBDのフロントエンド名とバックエンド名が詳しく説明されます。それは確かに絶対確実ではないので、注意して使用する必要があります。
皮切りに
#> xm block-list playground
Vdev BE handle state evt-ch ring-ref BE-path
51713 0 0 4 8 8 /local/domain/0/backend/vbd/10/51713
51714 0 0 4 9 9 /local/domain/0/backend/vbd/10/51714
51729 0 0 4 10 10 /local/domain/0/backend/vbd/10/51729
51730 0 0 4 11 11 /local/domain/0/backend/vbd/10/51730
次に、xenstore-ls
(またはxsls
)を使用します。次のようなものが表示されます。
...
51729 = ""
domain = "playground"
frontend = "/local/domain/10/device/vbd/51729"
uuid = "da5b1321-249e-c7a6-6ba8-5f5a01fe3b85"
dev = "xvdb1"
state = "4"
params = "/dev/sde1"
mode = "w"
online = "1"
frontend-id = "10"
type = "phy"
physical-device = "fd:11"
hotplug-status = "connected"
feature-barrier = "1"
sectors = "2097152"
info = "0"
sector-size = "512"
...
上記の場合、仮想ブロックデバイス/local/domain/10/device/vbd/51729
が物理デバイス/dev/sde1
にマップされていることがわかります。
あなたが試すことができます: xm block-list --long <dom>