如何确保触摸板在重启时启用?

如何确保触摸板在重启时启用?

刚刚安装了 Ubuntu Mate,遇到一个奇怪的问题:每次重新启动系统时,我都必须手动启用触控板。

这变得相当烦人,如果有人可以通过创建脚本或其他东西来帮忙,或者给我一个程序,或者帮助模拟FnF7密钥,那就太棒了。

答案1

我不知道有什么方法可以Fn通过使用xdotool类似的东西来模拟按键。不过,话虽如此,你可以编写一个脚本,在启动时运行该脚本来启用触控板。

这是一种替代方法。

为此,我们将使用xinput。不幸的是,我的这个系统上没有触控板,但命令应该以相同的方式使用。

首先,从终端运行以下命令:

xinput --list

您将在列表中寻找您的触控板。 我仅将使用我的鼠标作为示例。

terrance@terrance-ubuntu:~$ xinput --list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Kensington      USB/PS2 Wheel Mouse       id=8    [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Power Button                              id=7    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=9    [slave  keyboard (3)]

我的鼠标显示为,Kensington USB/PS2 Wheel Mouse因此这就是我们要获取的props。运行下一个命令以查看props可以为设备设置的:

xinput --list-props '<device name>'

示例:(我提供了大量信息,因此我将其截断为我们需要的信息。“设备启用”才是我们真正想要的。)

terrance@terrance-ubuntu:~$ xinput --list-props 'Kensington      USB/PS2 Wheel Mouse'
Device 'Kensington      USB/PS2 Wheel Mouse':
    Device Enabled (152):   1

显示Device Enabled (152): 1我的鼠标已启用。要禁用我的鼠标,只需将其设置为0,但根据您的情况,您希望启用它或将其设置为1。启用它的命令是:

xinput --set-prop '<device name>' 'Device Enabled' 1

启用鼠标的命令是:

xinput --set-prop 'Kensington      USB/PS2 Wheel Mouse' 'Device Enabled' 1

然后,您可以将命令及其完整路径添加xinput到文件中/etc/rc.local。您需要确保将其保留exit 0为文件中的最后一行/etc/rc.local

which xinput

将为您提供文件的完整路径。

terrance@terrance-ubuntu:~$ which xinput
/usr/bin/xinput

完成后,将你的行添加到/etc/rc.local文件中:

/usr/bin/xinput --set-prop '<device name>' 'Device Enabled' 1

它应该在您进入登录屏幕之前运行。

我注意到登录后该命令可能会被否决。因此,您可以将一个.desktop文件添加到/etc/xdg/autostart/文件夹中,该文件将随每个登录系统的用户一起启动。

我调用了我的文件mouse_enable.desktop并在其中添加了以下几行:

[Desktop Entry]
Encoding=UTF-8
Type=Application
Name=mouse_enable
Exec=/bin/bash -c 'sleep 15 && /usr/bin/xinput --set-prop "<device name>" "Device Enabled" 1'

使文件归 root 所有:

sudo chown root:root /etc/xdg/autostart/mouse_enable.desktop

使文件具有正确的权限:

sudo chmod 644 /etc/xdg/autostart/mouse_enable.desktop

现在登录时应该保持设备启用。

希望这可以帮助!

相关内容