我在 Linux 桌面和 Windows 10 笔记本之间使用旧的 KVM 切换器,一切正常。现在我正在尝试一个新型 4K 显示 KVM 切换器并且鼠标和键盘只有切换到Windows 10笔记本电脑时才可以使用。
当我启动 Linux 桌面时,鼠标和键盘可以进入 BIOS 设置并选择内核版本,但当它开始启动到 Linux 时,鼠标和键盘会丢失。我尝试了各种 BIOS USB 配置。
专用鼠标和键盘端口具有 EDID 编程。这种模拟允许交换机接收热键和鼠标手势,但与游戏外设和选定的鼠标/键盘品牌发生冲突。这是所有具有热键和鼠标手势切换功能的 KVM 交换机的问题。我们建议使用带有供电 USB 集线器的 USB 端口作为解决方法。由于 USB 端口没有 EDID 仿真,因此使用 USB 输入的设备无法使用键盘热键和鼠标手势切换。
尽管我的设备在切换到 Windows 后工作正常,但此 EDID 问题是否会成为问题?
将键盘和鼠标连接到桌面 USB 端口后,它们显示如下
$ lsusb | grep Dell
Bus 003 Device 012: ID 413c:2003 Dell Computer Corp. Keyboard
Bus 003 Device 016: ID 413c:301d Dell Computer Corp. Dell Universal Receiver
断开鼠标与桌面 USB 的连接并重新连接到桌面 USB 时,dmesg 输出:
[44207.307355] usb 3-1: USB disconnect, device number 16
[44237.459814] usb 3-1: new full-speed USB device number 17 using xhci_hcd
[44237.588780] usb 3-1: New USB device found, idVendor=413c, idProduct=301d, bcdDevice= 0.09
[44237.588793] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[44237.588795] usb 3-1: Product: Dell Universal Receiver
[44237.588796] usb 3-1: Manufacturer: Dell
[44237.592182] input: Dell Dell Universal Receiver as /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.0/0003:413C:301D.001D/input/input42
[44237.644089] hid-generic 0003:413C:301D.001D: input,hidraw3: USB HID v1.11 Keyboard [Dell Dell Universal Receiver] on usb-0000:00:14.0-1/input0
[44237.646362] input: Dell Dell Universal Receiver Mouse as /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.1/0003:413C:301D.001E/input/input43
[44237.646539] input: Dell Dell Universal Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.1/0003:413C:301D.001E/input/input44
[44237.697939] input: Dell Dell Universal Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.1/0003:413C:301D.001E/input/input45
[44237.698040] hid-generic 0003:413C:301D.001E: input,hidraw4: USB HID v1.11 Mouse [Dell Dell Universal Receiver] on usb-0000:00:14.0-1/input1
[44237.699622] hid-generic 0003:413C:301D.001F: hiddev96,hidraw5: USB HID v1.11 Device [Dell Dell Universal Receiver] on usb-0000:00:14.0-1/input2
当连接到 kvm 专用端口时,它们不会显示。
我猜 kvm 专用端口在这里:
$ lsusb | grep Terminus
Bus 003 Device 011: ID 1a40:0101 Terminus Technology Inc. Hub
当 kvm 连接到桌面并连接设备时,dmesg 输出:
[44978.128957] usb 3-4: new high-speed USB device number 24 using xhci_hcd
[44978.255178] usb 3-4: New USB device found, idVendor=1a40, idProduct=0101, bcdDevice= 1.11
[44978.255181] usb 3-4: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[44978.255183] usb 3-4: Product: USB 2.0 Hub
[44978.256899] hub 3-4:1.0: USB hub found
[44978.257119] hub 3-4:1.0: 4 ports detected
[44978.638953] usb 3-4.2: new low-speed USB device number 25 using xhci_hcd
[44978.830754] usb 3-4.2: New USB device found, idVendor=046d, idProduct=c534, bcdDevice= 1.01
[44978.830757] usb 3-4.2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[44978.838801] logitech-djreceiver 0003:046D:C534.002A: hidraw0: USB HID v1.00 Keyboard [HID 046d:c534] on usb-0000:00:14.0-4.2/input0
[44978.895119] logitech-djreceiver 0003:046D:C534.002B: hidraw1: USB HID v1.11 Mouse [HID 046d:c534] on usb-0000:00:14.0-4.2/input1
所以这些设备可以看作是logitech-djreceiver
。是否有一些参数可以传递给内核或一些驱动程序黑客以使其工作?如何排除故障?
每当我按下按键或移动鼠标时,这条线就会不断出现在 dmesg 输出中:
[19064.570003] delayedwork_callback: delayedwork queued before hidpp interface was enumerated
因此设备信号正在传递,但 Linux 并未将其作为鼠标和键盘设备获取。
我已经安装了 unifying-receiver-udev 并重新启动,但仍然无法工作。
还尝试了罗技鼠标,结果相同。
答案1
我的朋友也遇到了同样的问题16端口TESmart 4k HDMI KVM切换器在 Linux 5.8.18 上。
由于开关在引导加载程序中正常工作,因此修复了它:
sudo su
echo "blacklist hid_logitech_dj" > /etc/modprobe.d/logitech_dj.conf
reboot
所以只需将hid_logitech_dj
内核模块列入黑名单即可。
答案2
谢谢@lubosz!你救了我的命!!
实际上不需要重新启动:
sudo su -
echo "blacklist hid_logitech_dj" > /etc/modprobe.d/tesmart-kvm.conf
现在断开 kvm 和 PC 之间的电缆,然后:
sudo rmmod hid_logitech_dj
然后重新连接电缆,它不应再加载 hid_logitech_dj 。
验证(不应给出任何结果):
lsmod | grep hid_logitech_dj
如果您看到它仍然列出,请重新启动。