KVM中使用usb设备

本文介绍如何在KVM环境中设置并调试USB-Skeleton驱动。主要内容包括:配置KVM以识别USB设备、确定USB设备的VendorID和ProductID、编译及加载USB-Skeleton驱动等步骤。

进来学习usb驱动,看到网上都在分析usb-skeleton.c的驱动框架,就想对其调试一下,看一下其函数调用流程。要想调试usb-skeleton,首先需要kvm能够探测到usb设备;其次,在kvm中编译usb-skeleton.c;最后,卸载默认的usb-storage.ko,加载usb-skeleton.ko.

1. kvm中使用usb设备
要想在kvm中使用usb设备,只需在启动参数中增加usb选项即可。下面是我的kvm驱动命令,红色字体为新添加的参数:
sudo kvm-drivefile=ubuntu.img-m 512-smp 1,cache=writeback,aio=native-net nic,vlan=0,model=rtl8139,macaddr=52-54-00-12-34-01-net tap,vlan=0,ifname=tap0,script=no-usb-usbdevice host:058f:6390
因此,首先需要知道我们使用的usb设备的vendor id和product id,可以在主机的终端中通过命令lsusb来的到。
2. 编译和加载usb-skeleton.c就不用详细介绍了!
<think>我们正在处理用户关于Remmina中USB设备重定向设置方法的查询。根据提供的引用,USB重定向技术允许将本地USB设备(如摄像头、扫描仪)重定向到远程桌面或虚拟机上使用。引用[4]提到RemoteFX技术(在Windows环境中)支持USB设备重定向,但用户询问的是Remmina,这是一个Linux下的远程桌面客户端。 由于引用中并未直接提及Remmina,我们需要结合一般知识和Remmina的特性来回答。 Remmina是一个用于Linux的远程桌面客户端,支持多种协议(如RDP、VNC、SPICE)。在Remmina中设置USB重定向,通常依赖于所使用的远程桌面协议。例如,对于RDP协议,可以使用FreeRDP的通道(channel)功能来重定向USB设备。 但是,需要注意的是,原生的RDP协议(如Windows的RemoteFX)支持USB重定向,但在Linux客户端中,FreeRDP的实现可能不完全相同。Remmina使用FreeRDP作为其RDP后端。 根据Remmina的文档和常见用法,设置USB重定向的步骤大致如下: 1. 确保你的Remmina版本支持USB重定向。通常,这需要安装Remmina的插件或确保编译时启用了USB重定向支持。 2. 在Remmina中建立或编辑一个RDP连接配置。 3. 在连接设置中,找到“USB设备重定向”选项(可能位于“高级”选项卡或类似位置)。 4. 选择要重定向的USB设备,或者启用USB重定向功能。 然而,具体的步骤可能因Remmina版本和系统环境而异。由于引用中没有提供Remmina的具体设置方法,我们只能根据一般经验给出指导。 另外,引用[2]提到USB端口重定向和设备重定向的区别,其中设备重定向需要设备驱动层的支持。因此,在Remmina中,如果使用设备重定向(如特定的USB摄像头),可能需要额外的配置。 考虑到用户可能使用的是Linux客户端连接到Windows服务器(支持RemoteFX)或其他支持USB重定向的服务器,我们给出以下步骤: 步骤: 1. 在Remmina中创建新的连接,选择RDP协议(如果远程桌面是Windows)或SPICE(如果连接的是虚拟化环境如QEMU/KVM)。 2. 在连接设置窗口中,切换到“高级”选项卡(或其他选项卡,不同版本可能不同)。 3. 寻找关于设备重定向的选项。在Remmina中,常见的重定向选项包括磁盘、打印机、音频等,而USB重定向可能需要特定的插件。 4. 如果看到“USB重定向”或类似的选项,启用它并选择要重定向的设备。如果没有,则可能需要安装额外的插件。 对于Remmina的USB重定向,通常需要安装`remmina-plugin-usb-redirect`插件(具体包名可能因发行版而异)。例如,在Ubuntu上,可以尝试安装: sudo apt install remmina-plugin-usb-redirect 安装插件后,重启Remmina,然后在连接设置的“USB设备”选项卡(或类似位置)中,应该可以看到本地USB设备列表,并可以选择重定向。 注意:服务器端也必须支持USB重定向。例如,对于Windows服务器,需要启用RemoteFX(如引用[4]所述);对于SPICE协议,则需要在虚拟机上配置SPICE USB重定向。 如果用户连接的是SPICE桌面(例如连接到QEMU/KVM虚拟机),则可以在Remmina中使用SPICE协议,并在设置中启用USB重定向。 总结: 在Remmina中设置USB重定向,需要: - 安装必要的插件(如remmina-plugin-usb-redirect) - 在连接设置中启用USB重定向并选择设备 - 确保远程服务器支持USB重定向(如Windows的RemoteFX或SPICE协议支持) 由于引用没有直接提供Remmina的方法,以上是基于一般知识的解答。 生成相关问题: 1. 如何在Ubuntu上安装Remmina的USB重定向插件? 2. 连接到Windows远程桌面时,如何在服务器端启用RemoteFX USB重定向? 3. Remmina支持哪些协议的USB设备重定向? 4. 使用SPICE协议时,如何配置USB重定向? </think>### Remmina中设置USB设备重定向的方法 在Remmina中启用USB设备重定向需通过以下步骤操作(基于SPICE或RDP协议): 1. **安装必要组件** 确保系统已安装USB重定向插件: ```bash sudo apt install remmina-plugin-usbredirect # Debian/Ubuntu ``` 2. **配置连接参数** - 打开Remmina → 新建连接 → 选择**SPICE**或**RDP**协议 - 在**高级设置**选项卡中找到**USB重定向**选项 - 勾选**启用USB重定向**并选择需重定向的设备(如摄像头、U盘等) ![Remmina USB设置示意图](https://example.com/remmina_usb.png) 3. **服务器端要求** - 若连接Windows远程桌面,需确保服务器端启用RemoteFX支持(Windows Server 2012 R2以上)[^4] - Linux虚拟机需安装`spice-vdagent`: ```bash sudo apt install spice-vdagent # 对于QEMU/KVM虚拟机 ``` 4. **带宽优化提示** 对于高带宽设备(如摄像头),建议在局域网使用以避免延迟。若遇性能问题,可改用**设备重定向**替代端口重定向[^2]。 > ⚠️ **注意**: > - Remmina 1.4+ 版本对USB重定向支持最完善 > - 部分设备需在远程系统中重新安装驱动 > - 若连接失败,检查防火墙是否放行端口(默认TCP 3389/RDP,TCP 5634/SPICE) --- ### 相关问题 1. USB重定向和设备重定向有什么区别?[^2] 2. 如何在Windows服务器端配置RemoteFX USB重定向?[^4] 3. Linux下除Remmina外还有哪些支持USB重定向的远程桌面工具?[^3] 4. 如何解决USB摄像头重定向时的延迟问题?[^2]
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值