• 陪伴互联网运营小白共同探索成长,与IT爱好者共享探索乐趣
  • 建站只为分享,欢迎在PC端文章面打赏支持
  • 使用Ctrl+D 可收藏本站

pve8-lxc音画直通HDMI VGA输出系列:键鼠篇之原理知识

好玩有趣 陆子方 2周前 (03-20) 36次浏览 0个评论 扫描二维码
文章目录[隐藏]

在 LXC 容器中,键鼠的 USB 设备可以通过以下三种方式绑定:

挂载 /dev/input/eventX

√ 验证有效
只在 LXC 内部可用,LXC 关闭后 /dev/input/eventX 仍然存在于 PVE,但可能需要 udevadm 重新加载设备。设备插拔后 event 号可能会变化,但在 LXC 里可以 动态适配。适用于大多数情况:/dev/input/eventX 直接对应 Linux 内核输入设备,可用于 Xorg、Wayland 和 TTY。多个设备可能共用 event:例如 无线键鼠套装 可能 一个 event 处理键盘,另一个 event 处理鼠标,需要 xinput 确认。

挂载/dev/input/by-id/

√ 验证有效

和上面的是一样的,区别只是这里挂载的是usb的id,而不是event。更推荐这个方式。

绑定整个 USB 设备 /dev/bus/usb/001/012

× 不完全验证,可能是因为我在映射后,为配置对应的event事件有关,导致未成功
USB 设备完全映射到 LXC,不会影响 PVE 主机。设备路径不会随重启变化(只要设备插在相同的 USB 端口)某些应用程序无法识别:许多软件(Xorg、Wayland、libinput)更倾向于 evdev 方式,而不是直接通过 /sys/bus/usb 访问键鼠。

比对

/dev/input/by-id/
部分无线键鼠可能无效。适合有线键鼠稳定设备,但某些无线键鼠的部分功能可能丢失

/dev/bus/usb/
适合无线键鼠。透传整个 USB 设备,确保无线键鼠完整工作,但 PVE 失去控制

/dev/input/eventX
对无线键鼠和有线键鼠,可能因设备插拔而改变,必须手动修正

更多知识

有线键鼠 直接映射为 input 设备,但 无线键鼠的 USB 接收器本身是一个 HID 设备。无线键鼠的 USB 接收器 可能是一个完整的 HID 设备,它会在 /dev/bus/usb/ 里出现,而 /dev/input/by-id/ 可能不会完整映射它的所有功能。

HID 设备
由 hid-generic 或 hidraw 处理。设备路径 /dev/hidraw*, /sys/class/hidraw/。支持设备 键盘、鼠标、游戏手柄(仅限 USB/Bluetooth)LXC 透传方式 透传 /dev/bus/usb 设备(但 HID 设备不能直接作为 Xorg 输入设备)应用场景 直接读取 USB HID 数据(如游戏手柄的特殊功能)

Input 设备
由 evdev、libinput 或 xserver-xorg-input-evdev 处理。设备路径/dev/input/event*, /dev/input/mouse*, /dev/input/by-id/。支持设备键盘、鼠标、触摸板、GPIO 按钮、I2C 设备等。透传 /dev/input/event*(推荐)。应用场景用于 Xorg、Wayland、桌面环境(键鼠输入)


子方有料原创丨转载请注明原文链接
期待您的评论或捐赠,这是最好的鼓励和支持!
喜欢 (0)
[赞赏使我快乐]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到