这里是版主akuma……
之前一直用surface pro 7 (以下简称为sp7 ) 看网课,但是win10放视频负载高,发热量大(甚至不能同时开网页视频和本地播放器,会直接降频),而且我使用的是pd充电,buck降压电路的发热量也非常大,想了想还是试一下跑Linux效果怎么样
本文安装的系统是Arch Linux,触屏和笔都可以使用,但是适配程度不如windows (主要还是KDE以及相关应用没考虑过这方面的适配问题,不知道iptsd,针对surface进行适配的软件包,这个项目在未来能不能发挥更大的作用)。
值得注意的是,本文关闭了sp7的secure boot,目前来看并不影响windows hello的正常使用
Arch Linux并没有直接做secure boot的支持,用户如果想要使用secure boot,可以尝试根据Arch wiki: UEFI/安全启动 进行配置 正常人应该不会花这个闲工夫去配secure boot吧
Arch Linux的安装本文就不再赘述,有需要的朋友可以移步Archlinux简明指南和狗站
最全Arch Linux安装教程 的获取hand by hand的保姆级指导。前者是对Arch wiki较好的总结,节省了萌新 (和懒狗比如我) 疯狂跳转和查询资料的过程。对于一些值得注意的点,文本也会进行复读。当然,有能力的朋友最好还是和Arch wiki对比着阅读,能快速提高用户对Linux的理解和熟悉程度。
首先,在准备阶段,用户需要对磁盘进行分区。本人的sp7磁盘空间只有128GB,使用了tf卡作为扩容。好像!sp7的引导并不会检查tf卡,因此把grub引导装在tf卡里并不能成功识别,因此本人将系统硬盘划分了500M空间作为boot分区,第一次尝试安装Arch Linux的朋友请务必注意该细节 (最新的几款surface已经改成用2230的nvme硬盘扩容了,可以直接无视)
在 安装引导 的过程中,如果没有识别到windows的系统,可以将windows的启动分区挂载后,再使用 grub-mkconfig
命令重新生成grub.cfg配置文件(这和grub-install
是互不干涉的,如果我没记错的话)
grub-mkconfig > /boot/grub/grub.cfg
本人在surface上不打算用win10了,因此没有对grub做配置,有需要的朋友可以试一下。如果在安装完成后,登陆win10时出现蓝屏也不必恐慌,再重启一次就好了 (我也不知道为什么会这样,之前装双系统引导时没出现过这情况,反正我不打算在sp7上做双系统的引导了)
========================
在成功安装并进入系统后,此时的内核是Arch发行版的内核,缺少触屏和触控笔的驱动,因此触屏相关功能无法使用。需要更换内核。
- 添加密钥
curl -s https://raw.githubusercontent.com/linux-surface/linux-surface/master/pkg/keys/surface.asc \
| sudo pacman-key --add -
sudo pacman-key --finger 56C464BAAC421453
sudo pacman-key --lsign-key 56C464BAAC421453
- 在
/etc/pacman.conf
末尾,添加仓库
[linux-surface]
Server = https://pkg.surfacelinux.com/arch/
- 更新包管理器数据库
- 安装surface内核
pacman -S linux-surface linux-surface-headers iptsd
重新生成引导配置文件
我在这一步直接删除了Arch的Linux内核,你也可以试试不删除,但是意义不大,只会让你之后的grub多一个你根本就不会选择的内核选项大概(
pacman -R linux
grub-mkconfig > /boot/grub/grub.cfg
重启系统
重启后,使用neofetch,检查内核 Kernel后面是否有surface字样,有就说明成功了
然后检查iptsd服务是否启动
sudo systemctl status iptsd
如果没启动,就
sudo systemctl enable iptsd
重启之后应该就正常了。
==============================
说在后面的
本文参考了在Surface笔记本上安装Arch Linux全过程 ,但这玩意缺失了部分细节,尤其是重新配置引导的部分,而在驱动和一些软件包的选择上,也有不合适的地方。我自己不是很推荐大家 完完全全 按照这篇文章进行操作。
按照官方Arch wiki,并不是很推荐Intel核显使用 xf86-video-intel 驱动。在本场景下,会使你无法改变显示屏分辨率。最好的方式是,不装驱动,裸奔。
其他的一时没想起来就先不管了
本来之前意识到要替换内核的时候,想偷懒直接删除掉 /boot/vmlinuz-linux,然后对着surface的vmlinuz-linux-surface内核创建一个vmlinuz-linux硬链接,但好像这个方案太创了,就不偷懒,重新配置了一下grub.cfg。
如果有什么其他的问题,我摸鱼的时候会回复的。岛上和论坛里都会(当然,如果岛时间太过久远,就还是在论坛这里提问吧,毕竟三酱可没有邮箱提示)
祝各位肥哥安装顺利( ゚∀゚)
akuma
转载和我说一下,并且记得标明出处啊啊啊啊