PiKVM USB设备重定向:实现本地打印功能

PiKVM USB设备重定向:实现本地打印功能

【免费下载链接】pikvm Open and inexpensive DIY IP-KVM based on Raspberry Pi 【免费下载链接】pikvm 项目地址: https://gitcode.com/gh_mirrors/pi/pikvm

你是否遇到过远程控制服务器时需要打印文件的尴尬?每次都要将文件下载到本地再打印,既耗时又不安全。本文将详细介绍如何通过PiKVM的USB设备重定向功能,让远程服务器识别并使用本地打印机,实现一键打印。读完本文后,你将掌握:USB设备重定向的原理、打印机配置步骤、常见问题解决方法,以及动态管理USB设备的技巧。

功能概述

USB设备重定向(USB Passthrough)是PiKVM的一项高级功能,允许将连接到PiKVM的USB设备(如打印机、U盘、键盘等)直接转发给被控制的主机。这项功能适用于除v4 Mini(无可用USB端口)和基于Pi Zero的DIY版本之外的所有PiKVM型号。

USB Passthrough示意图

通过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设备状态:

  1. 首先生成GPIO配置:
[root@pikvm ~]# kvmd-otgconf --make-gpio-config >> /etc/kvmd/override.yaml
  1. 访问PiKVM的Web界面,进入【GPIO】标签页,你将看到类似以下的设备控制界面:

GPIO设备控制菜单

  1. 在表格中找到你的打印机设备,点击开关按钮即可启用/禁用设备重定向。

常见问题解决

端点资源不足

如果遇到"端点资源不足"错误,可临时禁用不常用设备:

[root@pikvm ~]# kvmd-otgconf -d mass_storage.usb0

打印机无法识别

  1. 检查USB线缆连接,确保打印机已开机
  2. 确认打印机的Vendor ID和Product ID是否正确,可通过以下命令获取:
[root@pikvm ~]# lsusb
  1. 参考USB配置文档调整设备参数

切换控制模式

需要在本地控制PiKVM和远程主机之间切换时,使用以下快捷键:

  • LeftAlt + LeftAlt + K:切换到PiKVM本地控制模式
  • LeftAlt + LeftAlt + H:切换回主机控制模式(设备重定向)

总结与扩展

通过USB设备重定向功能,PiKVM不仅能控制远程服务器,还能无缝使用本地USB设备,极大提升了远程工作效率。除了打印机,你还可以通过相同方法重定向其他USB设备,如扫描仪、U盘等。

更多高级配置选项,请参考:

若你在配置过程中遇到问题,欢迎在项目仓库提交Issue或参与社区讨论。

【免费下载链接】pikvm Open and inexpensive DIY IP-KVM based on Raspberry Pi 【免费下载链接】pikvm 项目地址: https://gitcode.com/gh_mirrors/pi/pikvm

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值