作者ivon852 (内容农场杀手)
看板MobileComm
标题[心得] iPad UTM安装Linux虚拟机跑Docker
时间Wed Sep 4 10:01:59 2024
分享如何在iPad善用UTM跑Linux虚拟机,执行Docker服务,并介绍外部SSH连线,以及UTM
与iOS共享资料夹的方法。
板上已经有大大分享过许多UTM的使者用报告,惟其多专注在Windows虚拟机方面,本篇我
将讨论UTM搭配Linux虚拟机的用途。
缘由
UTM为基於QEMU开发的开源虚拟机软体,提供macOS与iOS版本。UTM有在App Store上架,
该版本称作「UTM SE」,不需要AltStore侧载也不用越狱就能用,但缺点就是非常的慢。
iOS没有越狱就无法使用Hypervisor,虚拟机执行效率十分低落。这导致UTM装图形介面完
全没有实用性,宛如东南苦行山。即使是最轻量的Alpine Linux,开机到进XFCE4桌面10
分钟,开启Firefox一个YouTube网页10分钟还跑不出来...就算你的iPad处理器再强也没
有多大用处。
https://i.imgur.com/JGVCgBe.jpg
不过,UTM跑纯文字Linux虚拟机倒还凑合,每个指令的回应速度约5秒,所以是能够跑一
些纯文字工具的,例如ffmpeg(批次转档影片)、ImageMagick(批次转档照片)、
NodeJS、Python-pip、Rust,还有Docker服务。
只要设定资料夹共享,就能把iOS的档案丢到虚拟机处理再取出来。
左边是虚拟机内部的档案管理员,右边为iPad的档案APP,共享资料夹的档案会同步。
https://i.imgur.com/0xKafW0.jpg
此外,UTM的虚拟机可作为另一个APP「iSH Shell」的替代品。iSH Shell模拟了一个x86
的Alpine Linux环境,虽然启动速度很快,但它是32位元又有一堆Bad System Call的bug
,故透过UTM安装Linux虚拟机可获得更完整的Linux环境,起码QEMU对x86指令的支援度要
比iSH Shell好多了。
环境
- iPad Air 6 M2
- RAM 8GB
- UTM SE 4.5.4
- Alpine Linux 3.20
安装Alpine Linux
选用Alpine Linux是因为它体积小,开机速度快,约20分钟就能完成系统安装。如果要装
Ubuntu Server也是可以啦,但是安装时间较长。
1. 下载x86_64版本映像档
https://alpinelinux.org/downloads/
2. 安装UTM APP,新增Linux虚拟机。RAM至少512MB,储存空间至少8GB,CPU至少分配2核
心。
https://apps.apple.com/tw/app/utm-se-retro-pc-emulator/id1564628856
3. 将虚拟机开机,执行seupt-alpine指令稿,依照指示完成系统安装。
4. 这样就能跑Docker了:
sudo apk add docker docker-cli-compose
sudo addgroup $USER docker
sudo rc-update add docker
sudo rc-service docker start
https://i.imgur.com/W5Evcm9.jpg
设定外部SSH存取
iSH Shell的终端机界面方便我们复制文字执行指令。
UTM虚拟机预设网路无法从外部存取。编辑Alpine Linux虚拟机网路设定,新增通讯埠转
送,把虚拟机内部的22通讯埠导向localhost的2022通讯埠,这样虚拟机的SSH服务才能从
外部连线。
https://i.imgur.com/ybyhBWY.jpg
UTM放在後台容易被iOS系统中止。如果是iPad的话使用「滑动置前」或「幕前调度」开启
iSH Shell视窗即可保证两个APP不会被系统中止。在iSH Shell的视窗,输入ssh
user@localhost -p 2022指令登入。
https://i.imgur.com/iQP25z7.jpg
iOS与UTM虚拟机共享资料夹
编辑UTM虚拟机,到共享资料夹启用VirtFS (9Pfs),挂载iOS的「下载」资料夹给虚拟机
存取。
https://i.imgur.com/dISOutC.jpg
然後在虚拟机内执行指令,挂载iOS的资料夹:
sudo mount share -t 9p /mnt
--
原创梗图系列
https://i.imgur.com/Y10Cw4n.jpg https://i.imgur.com/FqRAWTs.jpg
https://i.imgur.com/Y1pYVqm.png https://i.imgur.com/UKvi40X.png
https://i.imgur.com/PdAKXa0.png
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.39.126.122 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MobileComm/M.1725415328.A.537.html
1F:推 Lyeuiechang : 推企鹅 09/04 10:15
2F:→ Lyeuiechang : JIT 开下去 UTM 速度快七到八倍,但是如果没有漏洞 09/04 10:17
3F:→ Lyeuiechang : 的情况下非常不实用,因为 app 划掉关掉之後就要重 09/04 10:17
4F:→ Lyeuiechang : 新接电脑启动 JIT,所以研究 SE 还是有用途在的 09/04 10:17
尤其iOS 17後启动JIT的步骤麻烦得要命
5F:→ hayato01 : 原po这系列文章值得收藏 09/04 10:47
6F:推 GiPaPa : 这个太强了 很多东西可以从这篇延伸去搞 09/04 11:41
7F:推 hgs1906 : 推 有趣、实用 09/04 11:59
8F:推 musashi023 : 硬核 09/04 12:06
9F:推 gaiaesque : 猛 09/04 12:45
10F:推 Luos : 可以跑docker 耶 09/04 13:05
11F:→ gary8442 : 强 09/04 13:14
12F:推 stark5566 : 推教学,虽然我不是用苹果 09/04 13:36
13F:推 applewarm : 推资料 09/04 14:38
14F:推 sam749 : 推 09/04 15:51
15F:推 powergreen : 推 09/04 16:18
16F:推 betterbutter: 推 09/04 16:38
17F:推 jhjhs33504 : 推拓海 还能再战几年? 09/04 17:18
XFCE没有很老吧
18F:推 wmdlifecoba : Hardcore 09/04 17:31
19F:推 phoque : alpine还要装20分钟 效能是真的差 09/04 19:37
起码比Ubuntu 1小时要快多了
20F:推 nw0309 : 看的过瘾 09/04 20:21
※ 编辑: ivon852 (114.39.126.122 台湾), 09/04/2024 21:21:19
21F:推 avans : 推技术文! 09/04 23:06
22F:→ thomaschion : 玩这个算自虐吗? 09/05 00:25
23F:推 andyching168: 问一下楼主的iPad是17.0吗 09/05 01:21
24F:→ andyching168: 最近17.0有方法可以装巨魔 09/05 01:21
25F:→ andyching168: 就可以用完整版UTM了 09/05 01:21
来不及了,出厂就是17.6
26F:推 Taichun318 : 推 09/05 04:32
27F:推 ksx064 : 推 09/05 14:35
28F:推 cherryiami : 推 09/06 02:55
※ 编辑: ivon852 (36.236.196.26 台湾), 09/07/2024 18:05:31