1. 程式人生 > >kvm雲主機使用宿主機usb裝置

kvm雲主機使用宿主機usb裝置

有些時候KVM客戶機還是要使用USB裝置,比如USB金鑰等

KVM命令列引數

-usb 開啟usb驅動程式,啟動客戶機usb支援
-usbdevice devname 為客戶機增加usb裝置,devname有多種形式,詳見man kvm,這裡只涉及一種形式host:vendor_id:product_id,也就是-usbdevce vendor_id:product_id

獲取USB裝置引數

將usb裝置插入主機之前

$lsusb > usb.old

usb裝置插入主機之後

$lsusb > usb.new

然後

vimdiff usb.old usb.new

找到新增加的那一行,類似下面這行

Bus 002 Device 004: ID 13fd:1040 Initio Corporation

ID後面的兩個欄位分別是vendor_id和product_id

對映usb裝置
客戶機命令列新增這兩個引數
sudo kvm -usb -usbdevice host:13fd:1040 …

這樣客戶機就可以看到對映的USB裝置了

小問題

把行動硬碟對映到客戶機做測試,虛擬客戶機竟然無法啟動了,從遠端vnc看一直停留在Booting from Hard Disk…,搜尋了下下也無結果,後來靈光一閃,是不是因為行動硬碟成了啟動磁碟?果然如此,修改引導引數如下

-boot order=c,menu=on

這裡增加了menu=on,這樣啟動的時候按F12可以選擇從哪個驅動器啟動,重新啟動,果然看到行動硬碟成了第一個啟動裝置,選擇本地硬碟正常啟動系統,從客戶機裡也可以看到行動硬碟。

據瞭解,現在KVM還沒有命令列引數可以設定從第二塊硬碟啟動,也有人在提這個事情,建議order=e從第二塊硬碟啟動,依次類推。

update:
引數-usbdevice devname對映普通的USB裝置有兩種格式,devname可以指定為
host:bus.addr
host:vendor_id:product_id
上面-usbdevice host:13fd:1040指定的是host:vendor_id:product_id這種格式,對於例子中顯示的USB裝置,也可以以host:bus.addr格式設定引數
host:2.4
其中2為匯流排號,4為裝置在總線上的地址Bus 002 Device 004,但是使用host:bus.addr這種格式有一個缺點,如果USB裝置換一個插口,其匯流排和裝置號會發生變化,而host:vendor_id:product_id這種格式則不受影響,即便客戶機換到另一臺主機上跑也是一樣。

update again(09/19/2012):

KVM主機上插了兩個同類型的usb裝置,這個兩個usb裝置的verdor_id和product_id竟然完全一樣,那隻能通過host:bus.addr這種方式為客戶機指定usb裝置了,不然kvm主機會不知所措吧。

獲取USB裝置引數

將usb裝置插入主機之前

$lsusb > usb.old

usb裝置插入主機之後

$lsusb > usb.new

然後

vimdiff usb.old usb.new

找到新增加的那一行,類似下面這行

Bus 002 Device 004: ID 13fd:1040 Initio Corporation

ID後面的兩個欄位分別是vendor_id和product_id

 



宿主機上新建usb_device.xml 
usb_device.xml內容如下



 

< hostdev mode='subsystem' type='usb' managed='yes'>

< source>

< vendor id='0x13fd'/>

< product id='0x1040'/>

< /source>

< /hostdev>


最後一步繫結
[[email protected] ~]# virsh attach-device 虛擬機器名字 usb_device.xml

Device attached successfully


成功繫結
 


可以檢視配置檔案:
virsh dumpxml 虛擬機器名字,存在下面一段:



< hostdev mode='subsystem' type='usb' managed='yes' >

      < source>

        < vendor id='0x13fd'/>

        < product id='0x1040'/>

        

      < /source>

      < alias name='hostdev0'/>

    < /hostdev>

相關推薦

公共上的專有資源池-阿裏專有宿主機

調度 cli 運行環境 sock 自動化部署 連續 ESS 隔離性 優勢 摘要: 阿裏雲專有宿主機為什麽能夠成為公共雲上的專有資源池 過去幾年,雲服務深刻的改變了社會獲取和使用計算能力的方式,雲已經逐漸演變成水電一樣的基礎服務,越來越多用戶逐步遷移上公有雲,有很多

vmware 主機已禁用 usb 裝置連線 的解決辦法

在虛擬機器上裝的linux系統 ,每次開機時都提示主機已禁用usb裝置連線。    VMware Workstation,提示提示Host USB device connection disabled。如圖: 按照圖片中的提示,應該是VMware USB Arbitration Service服務沒有啟用

kvm主機使用宿主機usb裝置

有些時候KVM客戶機還是要使用USB裝置,比如USB金鑰等 KVM命令列引數 -usb 開啟usb驅動程式,啟動客戶機usb支援-usbdevice devname 為客戶機增加usb裝置,devname有多種形式,詳見man kvm,這裡只涉及一種形式host:vendor_id:product_id,也

kvm虛擬機器讀取宿主機usb裝置

1、檢視usb裝置,用lsusb檢視宿主機usb裝置資訊; 2、在kvm虛擬機器的xml檔案中新增如下:     <hostdev mode='subsystem' type='usb'>        <s

Fedora中配置KVM的NAT網絡連接虛擬機和宿主機

code 完成 沒有 setting 通信 設置 如果 nat 網絡連接 最近有個需求是想使用KVM自帶的NAT網絡連接,並且完成虛擬機和主機之間的通信(註:KVM上如果用Bridge模式,配無線網卡就是個噩夢。) 虛擬機創建安裝都是默認,只是需要設置下包轉發: sudo

Ubuntu--USB裝置無法連線到它的理想主機控制器

在Ubuntu中提示“裝置“Toshiba USB FLASH DRIVE”無法連線到它的理想主機控制器。將嘗試把此裝置連線到最適合的主機控制器。這可能會導致針對此裝置的未定義行為。” 而VMware中的Ubuntu又顯示連線了的圖示,你可以把USB裝置換個USB介面試下,

OVS搭建宿主機KVM的橋接網路 常見命令

載入TUN模組: /sbin/modprobe tun 檢視系統模組:lsmod | grep tun  檢視tun裝置:ll /dev/net/tun 建立橋後檢視路由表項:route   #參看路由表是否正常配置 Kernel IP routing table D

宿主機mount虛擬機鏡像文件

block ext system -o off 主機 類型 image 匹配 轉載 mount掛載虛擬機鏡像文件 使用mount掛載ubuntu虛擬機所在的img文件的時候,執行: “sudo mount -o loop xxx.img /mnt/xxx”, 系統提示: “

服務器 ECS Linux Ubuntu 主機修改主機

定義 新的 .html 127.0.0.1 註意 set mark 進行 iyu 雲服務器 ECS Linux 主機修改主機名 修改雲服務器 ECS Linux 主機名常見的有兩種方式,本文對此進行概要說明。 臨時生效修改 使用命令行修改 hostname

Openstack 之 正常關閉一個物理宿主機

openstack 正常關閉物理宿主機 記錄一下今天正常關閉一個物理宿主機的過程。環境是3node HA,控制存儲計算融合節點,kolla部署環境,啟用ceph存儲,關閉其中一臺融合節點controller03 。大概過程是先熱遷移這個物理機上的虛擬機,然後設置ceph集群osd noout ,使關閉這

Linux系統共享宿主機Windows系統中文件

1111本文需求與目的:在Linux系統中許多文件不能直接從虛擬機中拖入系統,當文件存在或者文件夾存在宿主機Windows系統中,我們需要通過共享讓Linux系統可以使用這些文件。Linux系統共享宿主機Windows系統中文件

vm 安裝虛擬機 並且橋連宿主機

linu ping主機 ont span proto 靜態ip地址 col fig 安裝 安裝虛擬機時遇到的問題記錄下 vm安裝虛擬機完成後會出現三種與宿主機的連接方式(默認時nat) VMnet0——橋接模式,VMnet1——自定義,VMnet8——NAT模式 我這裏只把

容器"共享"宿主機的hosts文件(終極方案)

data style 後來 想法 方案 無法 dock -h pri 0.背景 有時候制作docker鏡像生成容器時需要宿主機的hosts文件共享到容器中。首先想的是通過掛載的方式共享hosts文件,但是實踐時發現根本行不通,hosts文件在/etc/目錄下,如進行掛載將會

騰訊建站主機的一次奇妙之旅

訪問 TE 臨時 領取 如果 HR 數字 空間 自動 十星主機 - 騰訊雲建站主機 體驗過無數個主機產商的虛擬主機服務,今天我把最佳虛擬主機產商頒給騰訊雲,因為它給我太多驚喜。 驚喜1:配置極高 騰訊雲建站主機只配置了三款,基礎版、專業版、旗艦版,而且網頁空間最低都是4

Linux系統文件誤刪除恢復方法;宿主機windows與Linux文件共享!

guest 12c 移動 應該 管理 figure package watermark restore 實驗項目:Linux系統文件誤刪除恢復方法; 宿主機windows與Linux文件共享 實驗環境:一:VMware虛擬機,Linux系統RedHat6.5(什麽版本不重要

Docker容器加載宿主機的hosts解析

doc name 文件 自定義日誌 項目 har 進入容器 主機 刪除 前言   公司一直在用傳統的tomcat下丟war包的架構體系,隨著項目的增多、服務器數量的增多、需要為此花費很多時間在不同服務器的系統環境問題上。為了技術的與時俱進和工作的運維效率等方面,筆者引入d

虛擬機器使用宿主機ssr

虛擬機器內系統設定 設定代理IP為宿主機的IP地址 SSR設定   git設定代理: git config --global http.proxy http.proxy 'socks5://127.0.0.1:1080' git config --

用Docker啟動php-5.6 fpm服務配合宿主機nginx運行php測試環境

stc sendmai 本機 png ins pen 本地 ash params 因為Ubuntu18.04默認的openssl版本就是1.1.0, 而PHP5.6無法在openssl 1.1下編譯 "PHP 5.6 is receiving only security f

使用Tar命令備份CENTOS/RedHat作業系統 並製作宿主機的docker映象

為保證伺服器安全,定期備份系統是個好習慣。首先: $ cd / $ mkdir backups $ cd backups 然後nano編寫一個shell指令碼 $ nano fullsystem-backup.sh 指令碼寫入以下內容 #!/bin/bash TODAY=`/bi

宿主機與docker容器之間免密碼ssh連結,容器與容器之間ssh免密碼連線

轉:https://segmentfault.com/a/1190000012484646 若要實現免密登陸,意味著無論是宿主機,還是容器都要彼此互動公鑰: 容器A傳送自身公鑰給中心機器,統一由中心機器,回發全部需要ssh到容器A的公鑰資訊,任何一個新加入的容器,傳送資訊給中心機器,則中心機