要在guest os中使用usb裝置,簡單地說,就是在
kvm啟動命令列加入引數:
-usb -usbdevice host:vid:pid
就行了,其中
vid指
vendor id, pid
是指product id.
比如我的u盤,
vid是
0e8d
,pid
是0002
,那麼啟動時加入的引數就是:
-usb -usbdevice host:0e8d:0002
附上完整的啟動命令列:
sudo kvm -m 384 -hda $osimg -localtime -net nic -net user -boot c -smp 2 -usb -usbdevice host:0e8d:0002 -name for_work
找到usb
裝置的vid
和pid
是使用usb裝置的關鍵
,每乙個裝置的
vid:pid
都是唯一的
,以下是查詢方法: 在
usb裝置未連上筆記本時,執行
lsusb,連上後檢測到
usb裝置後,再執行一次
lsusb
,對比前後資訊,找出變化的記錄。如我的:
插入前執行
lsusb
輸出:
bus 001 device 001: id 1d6b:0002 linux foundation 2.0 root hub
bus 003 device 001: id 1d6b:0001 linux foundation 1.1 root hub
bus 002 device 001: id 1d6b:0001 linux foundation 1.1 root hub
bus 005 device 001: id 1d6b:0001 linux foundation 1.1 root hub
bus 004 device 002: id 04f3:0230 elan microelectronics corp.
bus 004 device 001: id 1d6b:0001 linux foundation 1.1 root hub
bus 006 device 001: id 1d6b:0001 linux foundation 1.1 root hub
插入後執行
lsusb
輸出:
bus 001 device 001: id 1d6b:0002 linux foundation 2.0 root hub
bus 002 device 006: id 0e8d:0002 mediatek inc.
bus 002 device 001: id 1d6b:0001 linux foundation 1.1 root hub
bus 003 device 001: id 1d6b:0001 linux foundation 1.1 root hub
bus 004 device 002: id 04f3:0230 elan microelectronics corp.
bus 004 device 001: id 1d6b:0001 linux foundation 1.1 root hub
bus 005 device 001: id 1d6b:0001 linux foundation 1.1 root hub
bus 006 device 001: id 1d6b:0001 linux foundation 1.1 root hub
對比前後的輸出內容,注意變化,上面加粗的那行是新檢測到
usb裝置我的
u盤的資訊,其中,
vid:pid=0e8d:0002
注意:一定要用
sudo
來執行命令,否則
usb裝置無法載入。
usb裝置要在啟動
guest os
之前就連上機器,否則無法識別。
類似於音效卡,
guest os
用了之後,
host os
就不能再使用這個裝置了。 每個
usb裝置理論上都唯一的
vid:pid值。
KVM中使用usb裝置
進來學習usb驅動,看到網上都在分析usb skeleton.c的驅動框架,就想對其除錯一下,看一下其函式呼叫流程。要想除錯usb skeleton,首先需要kvm能夠探測到usb裝置 其次,在kvm中編譯usb skeleton.c 最後,解除安裝預設的usb storage.ko,載入usb s...
KVM中使用usb裝置
進來學習usb驅動,看到網上都在分析usb skeleton.c的驅動框架,就想對其除錯一下,看一下其函式呼叫流程。要想除錯usb skeleton,首先需要kvm能夠探測到usb裝置 其次,在kvm中編譯usb skeleton.c 最後,解除安裝預設的usb storage.ko,載入usb s...
C 下操作USB裝置的方法
不要分 或者官方 下面簡單介紹一下該如何使用libusbdotnet。1 首先你需要建立乙個c 的應用程式 控制台 窗體都可以 2 將libusbdotnet安裝目錄下src目錄下libwinusb拷貝乙份到你的工程根目錄下 3 不需要多說了吧,在你的解決方案上右擊,新增現有專案,將libwinus...