PiKVM USB设备重定向:实现本地打印功能
你是否遇到过远程控制服务器时需要打印文件的尴尬?每次都要将文件下载到本地再打印,既耗时又不安全。本文将详细介绍如何通过PiKVM的USB设备重定向功能,让远程服务器识别并使用本地打印机,实现一键打印。读完本文后,你将掌握:USB设备重定向的原理、打印机配置步骤、常见问题解决方法,以及动态管理USB设备的技巧。
功能概述
USB设备重定向(USB Passthrough)是PiKVM的一项高级功能,允许将连接到PiKVM的USB设备(如打印机、U盘、键盘等)直接转发给被控制的主机。这项功能适用于除v4 Mini(无可用USB端口)和基于Pi Zero的DIY版本之外的所有PiKVM型号。
通过USB设备重定向,你可以:
- 将本地打印机连接到PiKVM的USB端口,实现远程服务器打印
- 使用物理键盘鼠标直接控制远程主机,同时支持远程控制
- 动态切换USB设备的连接状态,灵活管理资源
设备兼容性与准备工作
支持的设备类型
根据USB配置文档,PiKVM支持多种USB设备重定向,包括:
- 打印机(通常需要2-3个端点)
- U盘(质量存储设备,占用2个端点)
- 键盘鼠标(各占用1个端点)
- USB转串口适配器(占用3个端点)
端点资源规划
PiKVM总共提供9个USB端点用于设备仿真,默认设备已占用部分端点:
- V2-V3型号:默认使用4个端点(绝对鼠标+质量存储)
- V4 Mini/Plus:默认使用5个端点(增加了相对鼠标)
| 设备类型 | 端点占用 | 备注 |
|---|---|---|
| 打印机 | 2-3 | 取决于打印机型号 |
| 键盘/鼠标 | 1 | 每个设备占用1个 |
| 质量存储设备 | 2 | 如U盘、虚拟光驱 |
在配置打印机前,建议通过以下命令检查当前端点使用情况:
[root@pikvm ~]# kvmd-otgconf
# Endpoints used: 5 of 9
# Endpoints free: 4
+ hid.usb0 # [1] Keyboard
+ hid.usb1 # [1] Absolute Mouse
+ hid.usb2 # [1] Relative Mouse
+ mass_storage.usb0 # [2] Mass Storage Drive
配置步骤
1. 系统更新
确保你的PiKVM系统版本支持USB设备重定向功能(KVMD 4.74+)。通过以下命令更新系统:
[root@pikvm ~]# rw
[root@pikvm ~]# pikvm-update
[root@pikvm ~]# ro
2. 启用USB重定向服务
根据USB Passthrough文档,执行以下命令启用服务:
[root@pikvm ~]# rw
[root@pikvm ~]# systemctl enable --now kvmd-localhid
[root@pikvm ~]# ro
3. 配置打印机重定向
编辑USB配置文件,添加打印机支持:
[root@pikvm ~]# rw
[root@pikvm ~]# nano /etc/kvmd/override.yaml
添加以下配置(根据打印机类型调整):
otg:
devices:
printer:
enabled: true
start: true
type: printer
vendor_id: 0x04F9 # 兄弟打印机示例ID
product_id: 0x0056
保存并退出编辑器,然后重启KVMD服务:
[root@pikvm ~]# systemctl restart kvmd
[root@pikvm ~]# ro
4. 验证配置
使用kvmd-otgconf命令验证打印机是否已正确添加:
[root@pikvm ~]# kvmd-otgconf
# Endpoints used: 7 of 9
# Endpoints free: 2
+ hid.usb0 # [1] Keyboard
+ hid.usb1 # [1] Absolute Mouse
+ hid.usb2 # [1] Relative Mouse
+ mass_storage.usb0 # [2] Mass Storage Drive
+ printer.usb0 # [2] Printer
Web UI管理
通过Web界面的GPIO菜单,你可以方便地动态管理USB设备状态:
- 首先生成GPIO配置:
[root@pikvm ~]# kvmd-otgconf --make-gpio-config >> /etc/kvmd/override.yaml
- 访问PiKVM的Web界面,进入【GPIO】标签页,你将看到类似以下的设备控制界面:
- 在表格中找到你的打印机设备,点击开关按钮即可启用/禁用设备重定向。
常见问题解决
端点资源不足
如果遇到"端点资源不足"错误,可临时禁用不常用设备:
[root@pikvm ~]# kvmd-otgconf -d mass_storage.usb0
打印机无法识别
- 检查USB线缆连接,确保打印机已开机
- 确认打印机的Vendor ID和Product ID是否正确,可通过以下命令获取:
[root@pikvm ~]# lsusb
- 参考USB配置文档调整设备参数
切换控制模式
需要在本地控制PiKVM和远程主机之间切换时,使用以下快捷键:
LeftAlt + LeftAlt + K:切换到PiKVM本地控制模式LeftAlt + LeftAlt + H:切换回主机控制模式(设备重定向)
总结与扩展
通过USB设备重定向功能,PiKVM不仅能控制远程服务器,还能无缝使用本地USB设备,极大提升了远程工作效率。除了打印机,你还可以通过相同方法重定向其他USB设备,如扫描仪、U盘等。
更多高级配置选项,请参考:
若你在配置过程中遇到问题,欢迎在项目仓库提交Issue或参与社区讨论。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考





