KVM命令行參數(shù)
-usb 打開usb驅(qū)動(dòng)程序,啟動(dòng)客戶機(jī)usb支持
-usbdevice devname 為客戶機(jī)增加usb設(shè)備,devname有多種形式,詳見man kvm,這里只涉及一種形式host:vendor_id:product_id,也就是-usbdevce vendor_id:product_id
獲取USB設(shè)備參數(shù)
將usb設(shè)備插入主機(jī)之前
$lsusb > usb.old
usb設(shè)備插入主機(jī)之后
$lsusb > usb.new
然后
vimdiff usb.old usb.new
找到新增加的那一行,類似下面這行
Bus 002 Device 004: ID 13fd:1040 Initio Corporation
ID后面的兩個(gè)字段分別是vendor_id和product_id
映射usb設(shè)備
客戶機(jī)命令行添加這兩個(gè)參數(shù)
sudo kvm -usb -usbdevice host:13fd:1040 …
這樣客戶機(jī)就可以看到映射的USB設(shè)備了
小問題
把移動(dòng)硬盤映射到客戶機(jī)做測試,虛擬客戶機(jī)竟然無法啟動(dòng)了,從遠(yuǎn)程vnc看一直停留在Booting from Hard Disk…,搜索了下下也無結(jié)果,后來靈光一閃,是不是因?yàn)橐苿?dòng)硬盤成了啟動(dòng)磁盤?果然如此,修改引導(dǎo)參數(shù)如下
-boot order=c,menu=on
這里增加了menu=on,這樣啟動(dòng)的時(shí)候按F12可以選擇從哪個(gè)驅(qū)動(dòng)器啟動(dòng),重新啟動(dòng),果然看到移動(dòng)硬盤成了第一個(gè)啟動(dòng)設(shè)備,選擇本地硬盤正常啟動(dòng)系統(tǒng),從客戶機(jī)里也可以看到移動(dòng)硬盤。
據(jù)了解,現(xiàn)在KVM還沒有命令行參數(shù)可以設(shè)置從第二塊硬盤啟動(dòng),也有人在提這個(gè)事情,建議order=e從第二塊硬盤啟動(dòng),依次類推。
update:
參數(shù)-usbdevice devname映射普通的USB設(shè)備有兩種格式,devname可以指定為
host:bus.addr
host:vendor_id:product_id
上面-usbdevice host:13fd:1040指定的是host:vendor_id:product_id這種格式,對于例子中顯示的USB設(shè)備,也可以以host:bus.addr格式設(shè)定參數(shù)
host:2.4
其中2為總線號,4為設(shè)備在總線上的地址Bus 002 Device 004,但是使用host:bus.addr這種格式有一個(gè)缺點(diǎn),如果USB設(shè)備換一個(gè)插口,其總線和設(shè)備號會(huì)發(fā)生變化,而 host:vendor_id:product_id這種格式則不受影響,即便客戶機(jī)換到另一臺(tái)主機(jī)上跑也是一樣。
update again(09/19/2012):
KVM主機(jī)上插了兩個(gè)同類型的usb設(shè)備,這個(gè)兩個(gè)usb設(shè)備的verdor_id和product_id竟然完全一樣,那只能通過host:bus.addr這種方式為客戶機(jī)指定usb設(shè)備了,不然kvm主機(jī)會(huì)不知所措吧。