Centos7 kvm支持usb配置
安装lsusb命令行工具
yum -y install usbutils
kvm支持usb
我用的是源码编译安装kvm
编译安装之前,要先安装依赖
yum install libusb-devel libusbx-devel
tar xf qemu-3.0.0.tar.gz
cd qemu-3.0.0
./configure --prefix=/usr --libdir=/usr/lib64 --sysconfdir=/etc --localstatedir=/var --libexecdir=/usr/libexec --enable-rbd --enable-libusb && make -j24 && make install
mv /usr/libexec/qemu-kvm{,.orig}
ln -s /usr/bin/qemu-system-x86_64 /usr/libexec/qemu-kvm
sed -e 's/#user = "root"/user = "root"/' -e 's/^#group = "root"/group = "root"/g' -i /etc/libvirt/qemu.conf
chown root:kvm /dev/kvm
查询usb 的对应id
[root@matrix01 ~]# lsusb
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 002: ID 0624:0248 Avocent Corp. Virtual Hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 004: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
创建usb.xml 用来kvm识别usb
[root@matrix01 ~]# vi usb.xml
<hostdev mode='subsystem' type='usb'>
<source>
<vendor id='0x0424'/>
<product id='0x2514'/>
</source>
</hostdev>
Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0
Hub
vendor id : product id = 0424:2514
正在运行中的虚机直接挂载usb
#挂载
virsh attach-device [虚机名] usb.xml /如果是固定一直使用u盘类似于加密狗这样的软件,建议使用 加载到配置项中 使用参数 --persistent
#卸载
virsh detach-device [虚机名] usb.xml
挂载成功后,对应虚机xml文件会添加一段内容
<hostdev mode='subsystem' type='usb' managed='no'>
<source>
<vendor id='0x0424'/>
<product id='0x2514'/>
</source>
<alias name='hostdev0'/>
</hostdev>