鼠标能移动但无法点击需逐级排查:先按Ctrl+Alt+Esc确认桌面进程是否假死;若否,切TTY查ukui-kwin-x11 CPU占用、/dev/input/event权限及input组归属;再用evtest验证BTN_事件是否捕获;最后重启udev、dbus、ukui-kwin-x11和ukui-panel服务。

麒麟OS系统运行一段时间后鼠标能移动但无法点击,说明输入事件分发链在中途断裂,必须从驱动层、服务层、桌面环境层逐级验证——跳过任一层都可能让问题反复出现。
确认是否为桌面进程假死
按 Ctrl + Alt + Esc,观察是否弹出“强制关闭窗口”对话框。能弹出,说明ukui-panel或ukui-kwin-x11仍在运行,只是右键/左键事件未被正确捕获;若无反应,直接进入TTY排查。
按 Ctrl + Alt + F1 切入TTY终端,登录后执行:
ps aux | grep -E "(ukui-kwin|ukui-panel|plasmashell|gnome-shell)" | grep -v grep
若发现 ukui-kwin-x11 进程 CPU 占用长期高于 90%,它大概率已卡在事件循环中,无法处理按钮按下事件。
检查输入设备节点权限与状态
在TTY中运行:
ls -l /dev/input/event* | grep mouse
查看输出中对应鼠标的 event 节点(如 event5)的权限是否为 crw-rw----,且所属组为 input。若属组不是 input,后续所有点击事件都会被内核丢弃。
执行:
groups $USER
若输出中不含 input,立即执行:
sudo usermod -aG input $USER
然后【必须注销当前图形会话并重新登录】,否则权限不生效。
验证底层输入事件是否被捕获
方法一:用 evtest 实时抓取原始事件
先安装:sudo apt install evtest
运行:sudo evtest
从列表中选择你的鼠标设备(通常含 “Mouse” 或 “MouseZ” 字样)
移动鼠标、点击左右键,观察终端是否实时打印 ABS_X、BTN_LEFT、BTN_RIGHT 等事件行。
若移动有输出、点击无任何 BTN_* 行,说明硬件信号未送达内核输入子系统,问题在驱动或 USB 链路。
方法二:快速交叉验证是否为 USB 自动挂起导致
执行:
echo 'options usbcore autosuspend=-1' | sudo tee /etc/modprobe.d/usb-no-suspend.conf
sudo update-initramfs -u
重启生效。此操作禁用 USB 设备休眠,对使用 USB 接口的无线接收器尤其关键。
重启关键输入服务链
第一步:重启 udev 与 dbus 用户总线
systemctl --user restart dbus
sudo systemctl restart systemd-udevd
第二步:强制刷新窗口管理器事件管道
killall ukui-kwin-x11
ukui-kwin-x11 --replace &
第三步:重启桌面面板以重建右键菜单注册表
killall ukui-panel
ukui-panel &
做完这三步后,按 Ctrl + Alt + F7(或 F2/F8,视版本而定)切回图形界面,立即测试左键双击桌面图标、右键空白处——若恢复,说明是事件管道老化或 dbus 缓存污染所致。

















