tencent cloud

云服务器

动态与公告
产品动态
公共镜像更新动态
操作系统官方停止维护计划
产品公告
产品简介
云服务器概述
产品优势
基本概念
地域和可用区
新手指引
Service Regions and Service Providers
产品计费
计费概述
计费方式
计费项
转换计费方式
购买实例
变配费用说明
欠费说明
快速入门
通过自定义配置购买 Linux 云服务器
通过自定义配置购买 Windows 云服务器
用户指南
操作指南总览
使用限制总览
实例
竞价实例
预留实例
镜像
存储
备份与恢复
网络
安全
密码/密钥
监控与告警
运维管理
便捷功能
迁移服务器
在线迁移
迁移咨询
故障处理
无法登录云服务器问题处理思路
Windows 实例登录相关故障
Linux 实例登录相关故障
其他实例登录相关故障
实例运行故障
Linux 实例内存故障
网络故障
实践教程
云服务器选型建议
搭建环境
搭建网站
搭建应用
搭建可视化界面
本地文件上传到云服务器
网络性能测试
其他实践教程
API 文档
History
Introduction
API Category
Making API Requests
Region APIs
Instance APIs
Cloud Hosting Cluster APIs
Image APIs
Instance Launch Template APIs
Placement Group APIs
Key APIs
Security Group APIs
Network APIs
Data Types
Error Codes
安全与合规
访问管理
网络
常见问题
地域和可用区相关
计费相关
实例相关
存储相关
镜像相关
服务器迁移相关
网络相关
安全相关
操作系统相关
运维和监控相关
访问管理相关
NTP 服务相关
应用场景相关
服务协议
CVM Service Level Agreements
Red Hat Enterprise Linux 镜像服务协议
Public IP Service Level Agreement
词汇表
文档云服务器实践教程其他实践教程Linux 系统使用 USB/IP 远程共享 USB 设备

Linux 系统使用 USB/IP 远程共享 USB 设备

PDF
聚焦模式
字号
最后更新时间: 2024-01-06 17:49:56

操作场景

USB/IP 是一个开源项目,已合入 Kernel,在 Linux 环境下可以通过使用 USB/IP 远程共享 USB 设备。本文档以如下环境版本为例,为您演示如何使用 USB/IP 远程共享 USB 设备: USB Client:CentOS 7.6 操作系统的云服务器 USB Server:Debian 操作系统的本地计算机

注意事项

不同发行版的 Linux 操作系统安装 USB/IP 的方式,以及内核模块名称略有不同。您可前往对应 Linux 系统官方发行版页面,查看当前使用的 Linux 系统是否支持 USB/IP 功能。

操作步骤

配置 USB Server

1. 在本地计算机上,依次执行以下命令,安装 USB/IP 并加载相关的内核模块。
sudo apt-get install usbip
sudo modprobe usbip-core
sudo modprobe vhci-hcd
sudo modprobe usbip_host
2. 插入 USB 设备,并执行以下命令,查询可用的 USB 设备。
usbip list --local
例如,在本地计算机上插入一个 Feitian 的优 Key,返回如下结果:
busid 1-1.3(096e:031b)
Feitian Technologies, Inc.: unknown product(096e:031b)
3. 记录 busid 的值,并依次执行以下命令,启动监听服务,指定 USB/IP 端口号,共享 USB 设备。
sudo usbipd -D [--tcp-port PORT]
sudo usbip bind -b [busid]
例如,USB/IP 指定端口号为3240端口(即 USB/IP 的默认端口),busid 为 1-1.3,则执行以下命令:
sudo usbipd -D
sudo usbip bind -b 1-1.3
4. (可选)执行以下命令,创建 SSH 隧道,并使用端口监听。
说明:
没有公网 IP 的本地计算机,请执行此步骤。如您的本地计算机有公网 IP,请跳过此步骤。
ssh -Nf -R USB/IP指定端口号:localhost:USB/IP指定端口号 root@your_host
your_host 表示云服务器的 IP 地址。 例如,USB/IP 的端口号为3240端口,云服务器的 IP 地址为192.168.15.24,则执行以下命令:
ssh -Nf -R 3240:localhost:3240 root@192.168.15.24

配置 USB Client

说明:
以下操作步骤以本地计算机没有公网 IP 为例,如您的本地计算机有公网 IP,请将步骤中的127.0.0.1修改为本地计算机的公网 IP 地址。
2. 依次执行以下命令,下载 USB/IP 源。
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -ivh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
3. 依次执行以下命令,安装 USB/IP。
yum -y install kmod-usbip usbip-utils
modprobe usbip-core
modprobe vhci-hcd
modprobe usbip-host
4. 执行以下命令,查询云服务器可用的 USB 设备。
usbip list --remote 127.0.0.1
例如,找到 Feitian 的优 Key 的信息,返回如下结果:
Exportable USB devices
======================
-127.0.0.1 1-1.3: Feitian Technologies, Inc.: unknown product(096e:031b):/sys/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3:(Defined at Interface level)(00/00/00)
5. 执行以下命令,将 USB 设备绑定至服务器中。
usbip attach --remote=127.0.0.1 --busid=1-1.3
6. 执行以下命令,查看当前 USB 设备列表。
lsusb
返回类似如下信息,即表示共享成功。
Bus 002 Device 002:ID096e:031b Feitian Technologies, Inc.
Bus 002 Device 001:ID1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001:ID1d6b:0001 Linux Foundation 1.1 root hub


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈