GMTC深圳站本周日开幕,14大专题全部上线,完整日程>> 了解详情
写点什么

16 岁高中生成功将 Linux 移植到 iPhone,并贴出详细指南

  • 2021 年 1 月 14 日
  • 本文字数:1154 字

    阅读完需:约 4 分钟

16 岁高中生成功将 Linux 移植到 iPhone,并贴出详细指南

如果你的旧 iPhone 已经无法支持你日常使用了,你会怎么处理这部 iPhone 呢?卖掉还是留起来收藏呢?近日,国外一名 16 岁的小开发者在 YouTube 上发布了一则视频,展示了自己是如何将 Linux 移植到一部无法使用的 iPhone 7。


2020 年 3 月,Corellium 提出了 Project Sandcastle,通过使用 checkra1n 越狱程序在 iPhone 上成功运行 Android,激发了开发者对那些旧型号的 iPhone 进行“改造”的热情。此后,很多开发者尝试对自己的旧设备进行“改造”,试图将 Linux 发行版移植到那些旧型号的 iPhone 上,为这些本该“吃灰”的设备延长寿命。


近日,国外一名 16 岁的小开发者 Daniel Rodriguez 成功地将 Linux Ubuntu 20.04 移植到了 iPhone 上。


图片来源于 xda-developers


据 Daniel 介绍,他使用的 iPhone 7 是他外婆的,这部设备已经完全无法访问 NVMe NAND,这意味着这部设备已经无法再运行 iOS 系统,就是大家常说的“变砖”,不过这部 iPhone 7 的硬件设备没有任何故障和损坏,于是 Daniel 拿来了这部手机,准备将它改造一番。


Daniel 参考并使用了 checkra1n,linux-sandcastle,projectsandcastle 等开源项目,同时自己编写了网桥设置 script/udev 规则来实现这一复杂的工作。最终成功地在这部 iPhone7 上运行了 Ubuntu 20.04。


Daniel 还在 Reddit 上分享了一份十分详细的指南,说明自己是如何成功制造出这部「iPhone 7 Ubuntu Edition」,有经验的开发者甚至可以直接按照该教程进行操作。而对于没有经验的用户,过程就会相对繁琐了不少,因为需要开发者事先手动编译内核并使用 checkra1n 访问 pongoOS 引导前执行环境。有兴趣的小伙伴可以移步 Reddit:


https://www.reddit.com/r/linux/comments/kux9xx/success_iphone_7_with_dead_nand_netbooting/


Daniel 表示,他自己在家里搭建了一组服务器,用于运行自己的俱乐部网站和游戏服务器。现在,他把改造后的 iPhone 7 当作一台服务器用来分担他的服务器的负载。而 iPhone 7 的 A10 芯片也发挥出了超乎 Daniel 想象的性能。


尝试将 Ubuntu 移植到 iPhone 7 上并不奇怪,因为该 Ubuntu 系统对于 Linux 内核并不陌生。此前的 postmarketOS 项目就是将 Linux 引入 iPhone 7 和 iPhone 7 Plus。虽然在 iPhone 上安装像 Ubuntu 这样的 GNU / Linux 发行版不会给用户带来与 iOS 相同的使用体验,但将旧设备改造并成功运行 Linux 无疑是一件很酷的事情。


他将改造成功的经历和指南发布到 Reddit 上后,迅速引发了广大开发者和用户的关注,很多用户称他为「天才」,不过 Daniel 却很谦虚,他表示,“这些都应该归功于 Corellium、checkra1n 项目的开发人员、Linus Torvalds 以及 Linux 内核的所有贡献者、Ubuntu 和 Debian 维护者等等。他们是为这个项目制作所有作品的真正英雄,而我只是恰好在 iPhone 上组装了这些前辈们留下的拼图。”

2021 年 1 月 14 日 09:312854

评论 2 条评论

发布
用户头像
16岁就这么厉害了
2021 年 01 月 18 日 15:05
回复
用户头像
牛人 , 真正的大师,永远怀着一颗学徒的心!
2021 年 01 月 16 日 16:34
回复
没有更多了
发现更多内容

程序员你了解零拷贝吗?

Java 程序员 后端

程序员必备基础:Git 命令全方位学习

Java 程序员 后端

算法基础三之链表、栈、队列、递归

Java 程序员 后端

终于有人把Java程序员必学知识点整理出来了,令人有如醍醐灌顶

Java 程序员 后端

程序员如何提高影响力

Java 程序员 后端

窥探Tomcat整体架构,server

Java 程序员 后端

程序流程控制(1)

Java 程序员 后端

纯干货“Java面试指南+Java核心宝典”!

Java 程序员 后端

线程的介绍与创建

Java 程序员 后端

程序员如何利用技术变现?

Java 程序员 后端

程序员的黄金五年,如何做到从月薪8K达到38K?

Java 程序员 后端

程序员缺乏经验的 7 种表现

Java 程序员 后端

程序员膨胀了?年薪100万,腾讯程序员跟南航飞行员差不多?

Java 程序员 后端

程序员必须掌握的600个英语单词

Java 程序员 后端

站在筛选简历和面试流程角度,给培训班出身Java程序员一些建议!

Java 程序员 后端

第六章(1(1)

Java 程序员 后端

简单的词法分析器

Java 程序员 后端

秀出新天际的SpringBoot笔记,让开发像搭积木一样简单

Java 程序员 后端

程序员面试防坑宝典,助你秋招一臂之力(建议收藏,文末有彩蛋)

Java 程序员 后端

程序流程控制

Java 程序员 后端

线上频出MySQL死锁问题!分享一下自己教科书般的排查和分析过程

Java 程序员 后端

程序员必备的思维能力:结构化思维

Java 程序员 后端

站在巨人的肩膀上学习:五位阿里大牛联手撰写的《深入浅出Java多线程》

Java 程序员 后端

策略模式---动态更改算法

Java 程序员 后端

第一次凡尔赛,字节跳动3面+腾讯6面一次过,谈谈我的大厂面经

Java 程序员 后端

第六章(1

Java 程序员 后端

线索化二叉树的作用

Java 程序员 后端

程序人生:做了6年Java开发,海投28家简历被拒,该何去何从?

Java 程序员 后端

程序员欣宸文章汇总(Java篇)

Java 程序员 后端

程序员欣宸文章汇总(Spring篇)

Java 程序员 后端

程序员,你以为你很优秀,但却面试屡屡失败?

Java 程序员 后端

2021星空论坛:破局创新,论道数字化转型

2021星空论坛:破局创新,论道数字化转型

16 岁高中生成功将 Linux 移植到 iPhone,并贴出详细指南-InfoQ