You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 22.04下如何配置轨迹球的滚动按钮与中键模拟?

Ubuntu 22.04下如何配置轨迹球的滚动按钮与中键模拟?

兄弟我太懂你这种升级后外设配置直接失效的崩溃感了——用惯了的轨迹球突然不能滚、不能模拟中键,改xorg.conf还差点搞炸X,简直闹心!别慌,Ubuntu 22.04改用libinput作为默认输入驱动了,老的xorg.conf配置逻辑已经不适用,咱们换个正确的姿势来搞定:

第一步:先把搞坏的X环境救回来(如果之前改崩了)

如果之前乱改xorg.conf导致X启动失败,先按Ctrl+Alt+F3进入TTY命令行,然后:

  • 先备份当前可能有问题的配置:sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak
  • 直接重命名禁用它:sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf.old
  • 然后重启系统:sudo reboot,这样就能回到正常桌面了。

第二步:找到你的轨迹球设备信息

打开终端,先确认设备的名称或ID:

xinput list

在输出里找到类似Logitech TrackMan Marble的条目,记下来它的完整名称(比如可能是Logitech USB Trackball,以实际输出为准)。

然后查看这个设备的libinput属性,确认关键配置项:

xinput list-props "Logitech TrackMan Marble"

你会看到libinput Middle Emulation Enabled(中键模拟)和libinput Button Scrolling Button(滚动触发按钮)这两个核心属性。

第三步:临时测试配置(先验证再永久化)

先别直接写配置文件,先临时设置看看效果:

  1. 开启中键模拟:
xinput set-prop "Logitech TrackMan Marble" "libinput Middle Emulation Enabled" 1

现在试试同时按左右键,应该能触发中键功能了(比如粘贴、打开新标签页)。

  1. 设置滚动触发按钮:
    首先得确定你想用来滚动的按钮编号——运行xev命令,会弹出一个小窗口,用鼠标点击轨迹球上你想设为滚动的按钮,看终端输出里的button X(比如button 8),这个X就是按钮编号。

然后把编号代入命令:

xinput set-prop "Logitech TrackMan Marble" "libinput Button Scrolling Button" 8

现在按住这个按钮,移动轨迹球,应该就能滚动页面了!

第四步:把配置永久化(重启后不失效)

临时设置生效后,咱们把配置写到Xorg的conf.d目录里,确保每次启动都会加载:

  1. 创建配置文件:
sudo nano /etc/X11/xorg.conf.d/90-trackman-marble.conf
  1. 粘贴以下内容(注意把ButtonScrollButton的值换成你刚才找到的按钮号,设备名称要和xinput输出里的一致):
Section "InputClass"
    Identifier "Logitech TrackMan Marble Custom Config"
    MatchProduct "Logitech TrackMan Marble"
    Driver "libinput"
    Option "MiddleEmulation" "on"
    Option "ButtonScrollButton" "8"  # 替换成你的滚动按钮编号
EndSection
  1. Ctrl+O保存,Ctrl+X退出编辑器,然后重启系统或者重启X服务(sudo systemctl restart display-manager)。

额外注意事项

  • 如果之前的xorg.conf里有针对这个轨迹球的旧配置,一定要彻底删除或者禁用,避免和新的libinput配置冲突。
  • 要是你的轨迹球型号名称有点不一样(比如带USB后缀),记得在MatchProduct里写准确的名称,不然配置不会生效。

备注:内容来源于stack exchange,提问作者Didi Kohen

火山引擎 最新活动