VirtualBoxやKVMなど、仮想化ツールを使用する際に発生する問題の一つに、ホスト(物理PC)に接続したデバイスがクライアント(仮想PC)上で認識されない場合があるというものがあります。
VirtualBoxにはUSBドライブを表示するプラグインがあり、KVMの場合はインストール済みのカーネルを直接使用するため、これらの種類のデバイスを表示するのに問題はないはずです。しかし、以下の例のように、ユーザーがGSMモデムをUSB経由で接続する必要がある場合、デバイスが常に表示されるとは限りません。
その記事はとても面白いと思ったので、彼が何をしたかがわかるようにそれらをお届けします。
KVMを使用してUSBGSMモデムを接続します
1-モデムをPCに接続し、コマンドを実行していくつかの情報を見つけます。
$ lsusbバス001デバイス001:ID 1d6b:0002 Linux Foundation 2.0ルートハブバス002デバイス001:ID 1d6b:0002 Linux Foundation 2.0ルートハブバス003デバイス001:ID 1d6b:0001 Linux Foundation 1.1ルートハブバス004デバイス002:ID 0557:2221 ATEN International Co.、Ltd Winbond Hermon Bus 002 Device 003:ID 12d1:1003 Huawei Technologies Co.、Ltd。E220HSDPAモデム/ E230 / E270 / E870 HSDPA / HSUPAモデム
この場合、著者が必要としていたのは最後の行、具体的にはベンダーID番号(12d1)と製品ID(1003)でした。
ご覧のとおり、クライアントで同じコマンドを実行すると、同じ結果は得られません。
$ lsusbバス001デバイス001:ID 1d6b:0001 Linux Foundation 1.1ルートハブバス001デバイス002:ID 0627:0001 Adomax Technology Co.、Ltdバス001デバイス003:ID 0409:55aa NECCorp。ハブ
ここで、デバイスをクライアントXML(VM)で定義する必要があります。 これを行うには、次のコマンドを使用してXMLファイルを直接編集します。
$ sudo virsh edit example-server.
USBデバイスは、デバイスセクションに追加する必要があります。
[...]
追加されていることに注意してください 0x 各IDの前
ファイルを保存し、VMを再起動して、接続されたデバイスが表示されるかどうかを確認します。
$ lsusbバス001デバイス001:ID 1d6b:0001 Linux Foundation 1.1ルートハブバス001デバイス002:ID 0627:0001 Adomax Technology Co.、Ltdバス001デバイス003:ID 0409:55aa NEC Corp.ハブバス001デバイス004:ID 12d1:1003 Huawei Technologies Co.、Ltd。E220HSDPAモデム/ E230 / E270 / E870 HSDPA / HSUPAモデム
そして、それがすべてです。
出典:http://liquidat.wordpress.com