Microsoft Surface Pro 3 (简体中文)
本文记录了所有使Arch Linux在Surface Pro 3上工作的所有有效信息.
启动进入安装
为了从USB启动,你需要做一些配置让平板从USB或者SD卡启动.另外,你可能需要暂时无视禁止Secure Boot而导致启动时的一个丑陋的红色背景.
Surface Pro 3有三种启动模式 详细看这里:
- 普通模式
- 按电源键。 你能从UEFI设置里的 "Alternate Boot order"改变启动顺序。
- 进入BIOS设置
- 关闭电源 (或者重启如果你手速够快)
- 按住音量上
- 按电源键
- 等Surface的LOGO出现
- 放开音量上
- 从USB/SD卡启动
- 关闭电源
- 按住音量下
- 按电源键
- 等Surface的LOGO出现
- 放开音量下
禁用Secure Boot
进入UEFI设置选择Secure Boot Control > Disable.现在接着安装.Microsoft 更多信息
开启Secure Boot启动安装镜像
看这里Secure Boot.
额外的步骤
虽然在最新的内核中已经支持了触摸屏,屏幕等等.但是它不支持摄像头,多点触控,Type Cover等.在Github上有为Surface Pro 3专制的内核:[1].改项目设法支持了这些设备.你可以直接在AURlinux-surfacepro3AUR[损坏的链接:package not found]中安装或自行编译.
编译内核
Ref: Kernels/Compilation/Traditional#Configuration[损坏的链接:无效的章节]
- Latest stable kernel release: f23 branch
- Latest RC: master branch
Surface Pro 3 Linux 其他内核补丁
git-apply
可以自动添加这些.启用触摸板
Ref: Reddit
安装xf86-input-synaptics并在/usr/share/X11/xorg.conf.d/10-evdev.conf
添加:
Section "InputClass"·· Identifier "Surface Pro 3 cover" MatchIsPointer "on" MatchDevicePath "/dev/input/event*" Driver "evdev" Option "vendor" "045e" Option "product" "07dc" Option "IgnoreAbsoluteAxes" "True" EndSection
重新启用Secure Boot
Troubleshooting
Invalid signature detected check secure boot policy in setup
This happened to me after deleting the Secure Boot database and initializing it with Microsoft & CAs. I also had to do the recovery of the bitlocker partition, but I would follow these steps:
- After the reset, switch off and try to boot from the sd/usb. If you do not succeed and get the message many times:
- Leaving all TPM & SecureBoot enabled and SSD Only alternate system order
- Do another database reset
- Enroll the Microsoft and CAs again
- reboot into sd/usb with volume down
- It should work now
- Follow steps in the Secure Boot installation
- After the full installation of archlinux, when you have it working, do the BitLocker recovery
If after doing these steps does not still work. Flash the archiso image once more and try again,
Keyboard Cover not working
This can happen sometimes when you restart. The solution was to shutdown and reboot. (not restart)