Microsoft Surface Pro 3

来自 Arch 维基

这篇文章或章节需要语言、维基语法或风格改进。参阅 Help:Style 以获得参考。

这篇文章或章节不符合 笔记本电脑页面指南

原因: 缺少一些章节。此页面也重复了其他维基页面的内容(章节已标记 Template:Merge) (在 Talk:Microsoft Surface Pro 3 中讨论)
硬件 PCI/USB ID 工作?
GPU 8086:0a16
Wi-Fi 11ab:2b38
蓝牙 1286:204b
网络摄像头 (正面) 045e:07be
网络摄像头 (背面) 045e:07bf
警告: 仅当 Windows 的 OEM 镜像仍然存在时,设备的保修才有效。但是,如 此处 所述,双启动不会使保修失效。

本页旨在记录有关在 Microsoft Surface Pro 3 平板电脑上运行 Arch Linux 的所有相关信息。

启动安装程序

要从 USB 启动,您需要指示平板电脑从 USB 或 SD 卡启动。此外,您可能希望避免禁用安全启动,因为这将导致每次启动时都显示一个难看的鲜红色背景,故意与 “Surface” 启动徽标冲突。

Surface Pro 3 中有三种启动类型,此处 解释了这三种启动类型

  1. 正常模式
    1. 只需让计算机启动即可。您可以在 UEFI 设置中从 “Alternate Boot order”(备用启动顺序)更改它
  2. 启动进入 UEFI 设置
    1. 在设备关机时(或重启,但最好安全起见)
    2. 按住音量调高按钮
    3. 按电源按钮
    4. 等到 Surface 徽标出现
    5. 松开音量调高按钮
    6. 您将看到 UEFI 设置菜单
  3. 启动进入 USB/SD 卡
    1. 关闭设备电源
    2. 按住音量调低按钮
    3. 按电源按钮
    4. 等到 Surface 徽标出现
    5. 松开音量调低按钮

禁用安全启动

注意: 这将在启动时导致徽标前出现红色背景。
警告: 如果您的驱动器已使用 BitLocker 加密,即使您稍后重新启用安全启动,您也可能会失去对其数据的访问权限,除非您在禁用安全启动之前备份恢复密钥或暂停保护。

启动进入 UEFI 设置,然后选择 Secure Boot Control > Disable(安全启动控制 > 禁用)。现在继续安装。有关更多信息,请参阅 Microsoft 步骤

使用安全启动启动

请参阅 安全启动

安装

这篇文章或章节是与 UEFI#安全启动 合并的候选对象。

注意: 这些步骤是关于如何支持 Arch Linux 的安全启动,需要在常规计算机中尝试。(在 Talk:Microsoft Surface Pro 3 中讨论)

我已经使用 systemd 的 bootctl Systemd-boot (旧的 Gummiboot) 完成了安装。完成 安装指南 后,您应该再做两件事。在安全启动中启动新安装将不起作用,因为 vmlinuz 尚未在其加载程序中注册。

最简单的方法是在重新启动之前完成所有设置,如下所示

  1. 退出 chroot,但不要卸载任何内容
  2. 将 /mnt/boot/EFI/boot/bootx64.efi 移动到 /mnt/boot/EFI/boot/loader.efi
  3. 将 /boot/EFI/boot/bootx64.efi 和 HashTool.efi 复制到 /mnt/boot/EFI/boot/

(如果您无法在 /boot 中找到 HashTool,请尝试在 /usr/run 中查找)

在这里,我们已启用 Preloader 以启动我们的 gummiboot 加载程序,如果它检测到某些内容未签名,它将启动 HashTool.efi 以对 vmlinuz-image 二进制文件进行签名。

我们的想法是,我们获取 systemd 引导加载程序,并使其成为 PreLoader 将启动的那个(与其在同一文件夹中,名为 loader.efi)。然后,我们复制 PreLoader(即 archiso 的 bootx64.efi)和 HashTool(已使用该名称)。

这样,在启用安全启动的情况下,您将能够在您希望的任何时候启动您的内核,无论是否签名,并在下次启动时重复哈希存储过程。

额外步骤

启用触摸板

参考:GitHub 为了启用触摸板的完整功能(例如,双指滚动,右键单击),您需要安装 xf86-input-synaptics 软件包,应用内核补丁,并将以下内容添加到 /etc/X11/xorg.conf.d/10-multitouch.conf

Section "InputClass"
  Identifier "Default clickpad buttons"
  MatchDriver "synaptics"
  Option "ClickPad" "true"
  Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
  Option "SecondarySoftButtonAreas" "58% 0 0 15% 42% 58% 0 15%"
EndSection

调整笔

笔按钮可能无法开箱即用。安装 xf86-input-wacom 软件包,并注释掉 /usr/share/X11/xorg.conf.d/10-evdev.conf 中的 MatchIsTablet 部分。此外,在 /usr/share/X11/xorg.conf.d/50-wacom.conf 的 N-Trig 的 MatchProduct 行中添加 1B96:1B05 Pen。请注意,紫色蓝牙按钮已被识别,但可以绑定到操作。参考:Reddit

虚拟键盘

根据您使用的桌面环境,您可能想要使用不同的虚拟键盘。onboard 提供了可靠且舒适的体验。此处 提供了光学调整指南。如果您正在使用 GNOME,这两个扩展 (1, 2) 提供了更好的集成。

启用安全启动的情况下启动

这篇文章或章节是与 安全启动 合并的候选对象。

注意: 这部分内容重复了页面的一部分,因为其中一些内容并非特定于设备。(在 Talk:Microsoft Surface Pro 3 中讨论)

对于启用安全启动的 UEFI,推荐的引导加载程序是 systemd-boot

要使用安全启动启动,您将需要以下软件包: efibootmgr efitools

请参阅 Surface Pro 3 和安全启动安装后

/boot/EFI/systemd/systemd-bootx64.efi 复制到 /boot/EFI/systemd/loader.EFI。将 /usr/lib/prebootloader/HashTool.efi/usr/lib/prebootloader/PreLoader.efi 复制到 /boot/EFI/systemd/。为 PreLoader.efi 创建一个 NVRAM 条目

 efibootmgr -d /dev/sdX -p Y -c -L Preloader -l /EFI/systemd/PreLoader.efi

验证条目是否已创建,并且它在启动顺序中是否是第一个

efibootmgr

在引导加载程序中注册您的内核:安全启动 注册 HashTool.efi 和 vmlinuz-linux,然后重新启动到系统。您现在应该能够使用安全启动启动。

注意
  • 由于 PreLoader.efi 是 efibootmgr 的默认启动选项,如果您更改内核,您将看到 PreLoader 再次使用 HashTool 注册新内核
  • 确保您在 /boot/loader/entries/ 中添加了条目,以便您可以看到使用新内核启动的选项

启用 Wi-Fi 和蓝牙

由于 linux-firmware 20220119 更新,Wi-Fi 和蓝牙需要 linux-firmware-marvell 软件包。

辅助功能

BIOS 的外观非常简单且不鲜艳,因此它可能与 OCR 软件配合良好。

可以使用键盘、鼠标或触摸屏配置 BIOS。

故障排除

检测到无效签名,请检查安全启动策略设置

这发生在我删除安全启动数据库并使用 Microsoft 和 CA 初始化它之后。我还必须执行 BitLocker 分区的恢复,但我会按照以下步骤操作

  1. 重置后,关闭电源并尝试从 SD/USB 启动。如果您没有成功并多次收到消息
    1. 保持所有 TPM 和安全启动启用,并仅限 SSD 备用系统顺序
    2. 再次执行数据库重置
    3. 再次注册 Microsoft 和 CA
    4. 使用音量调低按钮重新启动到 SD/USB
    5. 现在应该可以工作了
  2. 按照安全启动安装中的步骤操作
  3. 在 Arch Linux 完全安装并正常工作后,执行 BitLocker 恢复

如果在执行这些步骤后仍然无法工作。再次刷新 Archiso 镜像并重试,

键盘保护盖无法工作

有时在您重新启动时会发生这种情况。解决方案是关机并重新启动。(不是重启)

Xournal 中的笔/触摸屏问题

当使用 xf86-input-wacom 软件包时,最新官方版本的 xournalAUR (0.48.2) 中存在一个错误,它会错误地将 Surface Pen 检测为触摸屏设备。但是,它已在最新的 Xournal 源代码中修复,如 bug 中所述。安装 AUR 软件包 xournal-gitAUR 构建的最新源代码包括此修复程序。请注意,您需要选择 “NTRG0001:01 1B96:1B05” 作为触摸屏设备(选项 > 笔和触摸)。