USB挂载到KVM虚拟机

USB挂载到KVM虚拟机

通过 PCI/USB 直通(USB passthrough)

这是最直接的方法,把整个 USB 硬盘当作物理设备挂给虚拟机。

  1. 确认 USB 设备信息

    lsusb

    输出类似:

    Bus 002 Device 004: ID 1234:5678 SanDisk Corp.

    记下 Bus 和 Device,或者用 /dev/disk/by-id/ 也可以定位。


  2. 编辑虚拟机 XML

    virsh edit k10
    virsh edit k10

    在 <devices> 标签内添加:

    <hostdev mode='subsystem' type='usb' managed='yes'
       <source
          <vendor id='0x1234'/> 
       <product id='0x5678'/> 
    </source
    </hostdev>

    注意:vendor 和 product ID 用 lsusb 查到的实际值替换。

  3. 重启虚拟机

    virsh shutdown k10 virsh start k10

    虚拟机中应该能看到这个 USB 硬盘(lsblk 或 fdisk -l)。


如果报权限错误解决

  1. 创建 udev 规则文件

sudo vi /etc/udev/rules.d/99-usb-passthrough.rules

  1. 添加以下内容(针对你的硬盘)

SUBSYSTEM=="usb", ATTR{idVendor}=="1058", ATTR{idProduct}=="25ed", MODE="0666"

  1. 重载 udev 规则并重新插拔 USB

sudo udevadm control --reload sudo udevadm trigger

  1. 确认权限

ls -l /dev/bus/usb/002/002

应该显示 crw-rw-rw-,普通用户就可以访问了。

  1. 重启虚拟机

virsh start k10

  • 发表于 1天前
  • 阅读 ( 21 )
  • 分类:其他

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
omicsgene
omicsgene

生物信息

742 篇文章

作家榜 »

  1. omicsgene 742 文章
  2. 安生水 365 文章
  3. Daitoue 167 文章
  4. 生物女学霸 120 文章
  5. xun 90 文章
  6. rzx 85 文章
  7. 红橙子 81 文章
  8. CORNERSTONE 72 文章