我在 Microsoft Surface Pro 4 上安装了 Ubuntu,但触摸屏无法使用。此问题的其他所有答案都是旧版本的 Ubuntu。其他一切都正常,只是触摸屏不行。
答案1
解决方案是使用 linux-surface 内核,因为指出作者:@Archisman Panigrahi。
以下说明是从 linux-surface 内核 wiki 中的原始文章复制而来的:https://github.com/linux-surface/linux-surface/wiki/Installation-and-Setup
首先,您需要导入我们用于签署包的密钥。
wget -qO - https://raw.githubusercontent.com/linux-surface/linux-surface/master/pkg/keys/surface.asc \ | gpg --dearmor | sudo dd of=/etc/apt/trusted.gpg.d/linux-surface.gpg
此后,您可以添加存储库配置并更新 APT。
echo "deb [arch=amd64] https://pkg.surfacelinux.com/debian release main" \ | sudo tee /etc/apt/sources.list.d/linux-surface.list
sudo apt update
如果您在更新或安装过程中遇到“错误 401 未授权”的问题,请查看这。
现在您可以安装 linux-surface 内核及其依赖项。
sudo apt install linux-image-surface linux-headers-surface libwacom-surface iptsd
重要的:对 iptsd 的支持仅可追溯到撰写本文时的最新 LTS 版本(Debian 11 和 Ubuntu 22.04)。如果您使用的是旧版本,并且上述命令失败,请从
iptsd
该版本中删除。您仍然可以通过内核驱动程序使用基本的单点触控,但多点触控和手写笔将不起作用。之后,您可以安装我们的安全启动密钥。这会将 linux-surface 内核签名的密钥导入到您的引导加载程序中,这样内核就可以启动而无需禁用安全启动。
sudo apt install linux-surface-secureboot-mok
此软件包将向终端打印说明。如果您错过了这些:它将要求您重新启动。然后,在重新启动时,应该会弹出一个蓝色菜单,询问您是否要注册密钥。使用
ok
/确认yes
,并在要求输入密码时输入surface
。如果您错过了菜单或意外选择了错误的选项,您可以卸载(完全),然后重新安装软件包并重新启动以再次触发菜单。请注意,只有当您的 Debian 衍生产品支持开箱即用的安全启动时,此功能才会起作用。如果不支持,请查阅您的发行版的 wiki,并首先为发行版/库存内核设置安全启动。您还希望暂时跳过安装软件包,仅在设置完成后再安装它。
linux-surface 内核将与发行版提供的默认内核一起安装。这样,如果出现问题,您就有了一个可以使用的备份内核。引导加载程序将默认选择内核,但您应该更新其配置以确保它被识别。
sudo update-grub
最后,重新启动系统,您应该会启动到 linux-surface 内核。请检查 的输出是否
uname -a
包含字符串,以确保您实际使用的是正确的内核surface
。如果不包含该字符串,则您仍在使用默认内核,需要配置引导加载程序。