前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >iPad上使用UTM安装Linux arm64系统

iPad上使用UTM安装Linux arm64系统

作者头像
drunkdream
发布2024-01-08 08:53:04
1.4K1
发布2024-01-08 08:53:04
举报
文章被收录于专栏:醉梦轩醉梦轩

0x00 背景

以前研究过一次在iPad上安装Linux系统,当时的方案是:AltStore + UTM,由于没有硬件虚拟化,性能非常差,只能安装服务器版Linux,而且UTM由于签名问题需要每7天续签一次,几乎不具有可玩性。

最近看到有帖子说UTM支持硬件虚拟化了,于是稍微研究了一下,上面的两个问题也都解决了。

0x01 基本原理

解决这两个问题的关键都在一个叫:Trollstore(巨魔)的工具。这个工具最强大的地方在于,可以免越狱安装未签名的应用,其原理是利用了iOS系统的一些安全漏洞,因此,这个工具会iOS版本有要求。例如:Trollstore1只支持14.0 ~ 15.4.1 、15.5 Beta 4版本;Trollstore2支持14 - 16.5(具体支持的系统版本可以看官网介绍)。因此,只要不是太新的系统,都是可以支持的。

现在的问题变成了如何将这个工具安装到设备中,下面以iPad Pro 第三代(系统版本:16.2)为例进行介绍。

基本流程是按照官方文档进行操作。

0x02 准备工作

  • Tips(提示)应用安装到设备中
  • 最新版本的Sideloadly
  • 最新版本的iTunes(Windows端)
  • 最新版本的Misaka

Sideloadly是用来通过侧载方式安装Misaka;而Misaka用来溢出并注入Tips应用,最后打开提示应用,界面就变成了安装Trollstore的界面,点击安装就可以了。

推荐还是使用Mac系统来操作,Windows上可能会有些问题。

0x03 安装Trollstore应用

侧载是指不通过AppStore来安装应用的方式,一般是使用企业证书或开发者证书对ipa文件进行签名,然后进行安装。

使用Sideloadly安装Misaka

在电脑端下载并安装Sideloadly,并将最新版本的Misakaipa文件下载到本地。

sideloadly安装ipa示例
sideloadly安装ipa示例

拖入Misaka的ipa文件,输入苹果帐号,然后点击Start,第一次会提示输入帐号密码,完成后Misaka就安装到设备上了。图标如下:

侧载类应用除了sideloadly,还有前面提到的AltStore,以及爱思助手之类的。它们都有一个共同的缺点,就是每7天需要续签一次,基本只能用作开发调试场景。

使用Misaka注入提示应用

Misaka是一款免越狱就可以对iOS设备进行定制的应用,同时也提供了安装Trollstore的能力。

下面是官方文档推荐的注入方法:

在实际操作过程中遇到了以下两个问题:

  • 在上面的第三步操作后提示Done,但是打开提示应用Crash
  • 多操作几次后容易出现Error, please restart your device and try again [A2]报错,网上找到一个方案是安装3.4.1版本的Misaka

这个步骤是整个安装过程中最花费时间的,重试了很多次,重启了很多次设备,最终采用的是以下方法搞定的:

  1. 这里下载最新版本的PersistenceHelper_Embedded,并拷贝到设备中
  2. 点击Misaka底部的FileManager页面,打开到路径/var/containers/Bundle/Application/com.apple.tips/Tips.app
  3. 找到Tips文件,点击它,然后点击File Overwrite选项,导入PersistenceHelper_Embedded文件覆盖
  4. 重启设备

打开提示应用,安装Trollstore

打开提示应用,点击Install Trollstore进行安装,安装完成后,桌面上就会看到Trollstore的图标:

如果遇到打开提示应用Crash或是设备自动重启等问题,请卸载提示应用再重新安装,并再执行一次上面的步骤。

0x04 安装UTM应用

这里展示了UTM的多个版本:

  • UTM: 标准版,使用JIT方式,性能一般
  • UTM HV: 开启Hypervisor的版本,支持硬件虚拟化,性能较高(需要是M1 iPad)
  • UTM SE: 性能较差

由于手上的这款是M1芯片,因此选择了UTM HV版本。

  1. UTM HV版本的ipa文件拷贝到设备中
  2. 打开Trollstore,选择右上角+号,选择Install IPA File,然后选择刚才拷贝的ipa文件
  3. 在弹出的窗口中点击Install,很快就会安装完成

0x05 安装Ubuntu 22.04 arm64桌面版

现在Linux系统的arm生态已经很健全了,基本上常见的应用都有提供对应的arm版本。这里选择了Ubuntu系统,除了生态考虑,还有性能因素,毕竟iPad才8G内存,如果系统本身占用了太多资源的话,留给应用的资源就很有限了。

  1. 镜像ISO文件下载到设备中
  2. 打开UTM,点击创建一个新虚拟机,选择虚拟化(这种模式会开启硬件虚拟机)

  1. 然后选择Linux,添加刚才拷贝进来的iso镜像文件,后面是一些CPU、内存等硬件相关的参数配置
  2. 保存后启动虚拟机,开始进行安装,Ubuntu也支持Live方式使用,可以先体验一下
  3. 安装完成后进入系统,可以做一些个性化界面优化(访问虚拟机需要外接键盘鼠标才能操作)

至此,一个便携式Linux系统已经安装完成,系统操作还是非常流畅的,可以安装上vscode、git、docker等常用工具,轻量级开发也基本没啥问题。

连接上外接显示器,系统操作起来会更加舒服。

0x06 总结

iPad上通过免越狱实现硬件虚拟化,极大提升了虚拟机系统操作的流畅性,真正将桌面版系统运行起来。在此基础上,iPad才能真正变成一个开发工具。

0x07 参考链接

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-01-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x00 背景
  • 0x01 基本原理
  • 0x02 准备工作
  • 0x03 安装Trollstore应用
    • 使用Sideloadly安装Misaka
      • 使用Misaka注入提示应用
        • 打开提示应用,安装Trollstore
        • 0x04 安装UTM应用
        • 0x05 安装Ubuntu 22.04 arm64桌面版
        • 0x06 总结
        • 0x07 参考链接
        相关产品与服务
        容器服务
        腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档