当前位置: 首页 > news >正文

Surface RT 安装 Linux

零:起因

在家无事找出来一台老旧设备 Surface RT 一代的,系统最新是 Windows 8.1 arm版,应用商店都已经打不开了

虽说有破解方法,能运行些软件,但怎么说也不是任意安装,所以局限性还是相当的大,基本上就是个泡面盖子了

之前刷过 Linux,但实用性并不是很强,非常之卡,但现在实测已经可以使用了,还是比较流畅的,而且软件都可以随便安装了,所以就安装在 EMMC 硬盘中,直接替换掉原系统了

现在状态就是开机就是直接进 Linux 了,一下子就有了相当可观的使用性,并不比一些老平板差,虽然说明中说没有二级缓存啥的,但实际使用中感觉不出来差多少,最少现在使用绝对够用了,也许有了会性能更好

该方法的官方网站:Welcome - Windows RT Devices GitBook,网站都是英文的,可以用浏览器的翻译直接翻译,基本都能看懂

下面是基本步聚,其实真是非常简单

  1. 先破解安全启动:就是用 Yahallo 工具,说明及工具下载地址:Tegra Jailbreak USB - Windows RT Devices GitBook

  2. 然后按说明安装 Linux 即可,官方用的是 树莓派的 Linux 也是非常好用的,说明及工具下载位置地址:Raspberry Pi OS - Open Surface RT

  3. 主要操作:

    从USB引导:RT 关机状态『按住音量减不松,再按一下开机键,直到显示了U盘系统的引导,就可以松开音量减了』

    分区名说明:

    mmcplk0p2:mmcplk0(emmc硬盘)p2(第二个分区)

    mmcplk1p2:mmcplk1(RT自带读卡器)p2(第二个分区)

    sda2:sda(USB接的U盘或TF卡)2(第二个分区)

壹:破解安全启动

先找一台可以正常操作的电脑

一、先下载破解工具

工具名:Tegra_Jailbreak_USB.zip 网页上面有

二、解压工具

将压缩包内容直接解压到一个被格式化为 FAT32 的U盘中(TF卡也行)

注意:一定是要压缩包中的内容,应该是包含有 efi 等多个文件夹及文件,都要放在U盘的根目录下,新手有可能会把解压时生的同压缩包名的目录放里,那样是不行的

三、破解安全引导 - 安装 Golden Keys

官方方法很多,但咱选个最简单的就行,RT 关机,最好弄个USB HUB,接上键盘,再接上 U盘

  1. 按住 音量减 不松手,再按住开机键,等看到 Surface 的开机画面就可以松开机键,但音量减还要按住,直到开机的 Surface 字样没了,此时应该就是进入了U盘的引导页面,此时就可以松开音量减了,以后只要说从USB启动就是这么操作,如果还是进入了正常的系统就说明失败了,再重新操作或是按官方说明从 Windows 下安装也可以

  2. 上下键选 Install Golden Keys 后按回车,再选 Accept and Install 后按回车(没有键盘的话可能用音量加减键做为上下,屏幕下面的 Win 田字标可以做回车)

  3. 有可能会重启,不过无所谓,继续安装,反正就是从开机时就按住音量减就可以从U盘启动,接着安装下一步

四、破解安全引导 - 安装 Yahallo

  1. 重新从U引导后 选择 Install Yahallo 按回车就可以了

  2. 可以按说明到 Windows 中检查一下破解情况

五、破解失败的几个情况

一般破解都没问题,但之前查资料时发现有同学破解就会失败,说是因为最后微信有个两个更新锁住了破解还是引导还着,一般这种情况就是将系统恢复一下或重新安装一下,不用更新,一般都可以正常破解

破解完成了以后以后也不用管了,反正正常也看不出来,这 RT 也不存在安不安全的问题了,能用就不错了,嘿嘿

下一步就是安装Linux了,就更简单了

贰:安装 Linux

官方说明网站:Raspberry Pi OS - Open Surface RT

注意:官方说明需要两个U盘,其实一个也能搞定,主要目的是为了后面往系统里拷贝模块

一、先下载准备文件

usb-linux-boot.zip:UEFI boot - Open Surface RT

zImage、tegra30-microsoft-surface-rt-efi.dtb:Prebuilt binaries - Open Surface RT (下载 surface-rt-5.17.0-rc7-kernel-inc-modules.zip 文件就可以,解压出来里面就有这些文件,-efi.dtb是为了使用efi方式引导使用的)

二、下载并制作树莓派的启动U盘

树莓派官网:Raspberry Pi OS – Raspberry Pi

现在最新版本是用的 debian12 为基础的

接上U盘,注意会将U盘重分区并清除原数据,所以要用一个空U盘

打开『树莓派镜像烧录器』后,直接点『选择操作系统』即可(前面的选择设备不用管)

选择一个32位的系统(因为 RT 的处理器就是32位的,唉~)

写入前有可能会提示你先配置什么,不过实测并不会自动配置在系统中,所以如果必须设置就瞎一通保存就可以了

然后就安心等待U盘写完就可以了,只要网速好,还是挺快的

三、放入文件到U盘

之前下载的两个压缩文件都解压出来,从中找出需要拷贝以下几个文件到U盘的引导分区中

efi 目录、startup.nsh、zImage、tegra30-microsoft-surface-rt-efi.dtb

注意1:startup.nsh 中路径要改:原root=/dev/mmcblk1p2(意思是从RT的TF卡读卡器引导),改成root=/dev/sda2(如果实际是从RT的TF卡读卡器引导就不用改了)

注意2:官方说明中的引导分区 『boot/fat32』,并不是 Linux 中的 /boot 目录,而且一个分区,分区的类型是 fat32格式的,如果Windows、macOS应该都只会显示这一个U盘分区,另一个U盘分区因为是LINUX格式的,所以无法显示,但如果使用的Linux系统,那应该就会显示两个分区

四、U盘插入 RT

是插入到RT的哪里要看 startup.nsh 中的设置

mmcblk1p2 就是 TF卡插入RT的读卡器中,sda2 就是接在RT的 USB口中

然后关机状态,使用USB引导即可(上面写过,长按音量减+按一下开机键,直到Linux 开始引导)

注意:最好先接个键鼠,因为新系统需要先设置,新系统是没有虚拟键盘的

安装系统模块:

# 将下载的 surface-rt-5.17.0-rc7-kernel-inc-modules.zip 压缩文件中 lib/modules/5.17.0-rc7-next-20220310-g526f003fca07 目录,拷贝到 linux 系统中,要不然很多功能可能都不好用
​
# 我是直接将5.17。。。这个目录直接复制到了 Linux 系统 U盘的引导目录中拷贝过去的,也可以使用另一个U盘拷贝也行,无所谓,只能能放在系统的 /lib/modules 目录中就可以,下面的是我的操作
sudo mount /dev/sda1 /mnt
cd /mnt
sudo cp -r /mnt/5.17.0-rc7-next-20220310-g526f003fca07 /lib/modules/
cd
sudo umount /mnt

完成后就可以重新启动系统使用了(此时还是从U盘启动)

如果只是想体验下,到这就结束了,原系统还能保留不影响,想用LINUX就接入U盘从USB引导即可

五、安装到硬盘

注意:安装到硬盘后原系统都没有了,硬盘分区会都会被重新分区

在U盘引导完 Linux 并设置完成,此时系统已经算是可以正常使用了

选左上角菜单 -> 附件 -> SD Card Copier

第一行是选择U盘驱动器做为来源

第二行是选择emmc做为目的驱动器

必须选中『新分区UUID』的复选框,最后点开始,等待即可,最好没事儿动动鼠标,别让它黑屏,以免出问题

写入完成后的重点操作:

修改引导分区中的 startup.nsh (可能还会有好几个带后缀的 startup.nsh 最好都改下)

此时是要在 RT 中进行修改,而系统中默认是看不到引导分区的,所以可以使用以下命令

# 将硬盘的引导分区加载到 /mnt 目录中
sudo mount /dev/mmcblk0p1 /mnt
cd /mnt
ls -lh startup.nsh* #可以查看到要改的这些文件
sudo nano startup.nsh #修改root=/dev/sda2 不管原内容是什么,最终应为root=/dev/mmcblk0p2
# 用nano 用vi 都可以,习惯哪个用哪个,改完保存后就可以了

Linux系统此时已经完整的安装在了 RT 的硬盘中了

此时就可以关机,拨到所有U盘,并直接正常开机(就是平常按一下开关的那种)

别忘记可以从硬盘中正常开机后需要扩展一下硬盘,要不然太浪费空间

打开终端 -> 输入 sudo raspi-config -> 选择 Advanced Options -> 选择 Expand Filesystem 此时硬盘所有的空间就都是可以使用的了

叁:后续

触摸屏的键盘

sudo apt install onboard
sudo apt install at-spi2-core

设置可能会是乱码

一些问题

触摸屏该怎么点出鼠标右键

一些软件中文是乱码

开关机键没法熄屏,但自动熄屏后可以通过开关机键点亮

其它问题慢慢再发现

可以干点啥呢

反正32位LINUX能干的它都能干,但不建议在上面跑数据库,根据以前用开发板的经验发现,这种固态硬盘跑数据库特别容易坏,注意是特别容易坏,别的都没问题,所以数据库文件一定要放在外置的硬盘上,最好是机械盘,准成些

相关文章:

  • 111111111111111
  • [蓝桥杯复盘] 第 3 场双周赛20231111
  • 计算机网络技术
  • Aspose.OCR for .NET 2023Crack
  • Sprint Boot 学习路线 4
  • 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
  • 考研数据结构单链表的增删改查看这一篇就够了
  • 【教3妹学编程-算法题】2923. 找到冠军 I
  • 【SpringBoot】手写模拟SpringBoot核心流程
  • maven重新加载后Target bytecode version总是变回1.8
  • 安卓常见设计模式2------构建者模式(Kotlin版)
  • vmware开启ipv6
  • HP惠普暗影精灵9P OMEN 17.3英寸游戏本17-cm2000(70W98AV)原装出厂Windows11-22H2系统镜像
  • 自动驾驶学习笔记(八)——路线规划
  • Activiti6工作流引擎:Form表单
  • 【译】JS基础算法脚本:字符串结尾
  • .pyc 想到的一些问题
  • 0x05 Python数据分析,Anaconda八斩刀
  • Docker入门(二) - Dockerfile
  • Iterator 和 for...of 循环
  • JavaScript 基本功--面试宝典
  • nginx 负载服务器优化
  • PAT A1050
  • SpringCloud集成分布式事务LCN (一)
  • 分享几个不错的工具
  • 浮动相关
  • 关于使用markdown的方法(引自CSDN教程)
  • 记一次用 NodeJs 实现模拟登录的思路
  • 我的业余项目总结
  • 吴恩达Deep Learning课程练习题参考答案——R语言版
  • 一天一个设计模式之JS实现——适配器模式
  • 源码之下无秘密 ── 做最好的 Netty 源码分析教程
  • 《码出高效》学习笔记与书中错误记录
  • 好程序员大数据教程Hadoop全分布安装(非HA)
  • ​​​​​​​​​​​​​​汽车网络信息安全分析方法论
  • ​LeetCode解法汇总2182. 构造限制重复的字符串
  • ​七周四次课(5月9日)iptables filter表案例、iptables nat表应用
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (板子)A* astar算法,AcWing第k短路+八数码 带注释
  • (附源码)ssm考试题库管理系统 毕业设计 069043
  • (力扣记录)1448. 统计二叉树中好节点的数目
  • (全注解开发)学习Spring-MVC的第三天
  • (新)网络工程师考点串讲与真题详解
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • (转)ABI是什么
  • (转)Google的Objective-C编码规范
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • .[backups@airmail.cc].faust勒索病毒的最新威胁:如何恢复您的数据?
  • .dat文件写入byte类型数组_用Python从Abaqus导出txt、dat数据
  • .Net(C#)常用转换byte转uint32、byte转float等
  • .php文件都打不开,打不开php文件怎么办
  • [Android] 修改设备访问权限
  • [AutoSAR 存储] 汽车智能座舱的存储需求
  • [AX]AX2012 AIF(四):文档服务应用实例