前面用Linux deploy软件安装了Linux系统在手机,实则不是真正的手机刷成了linux系统,而是通过Linux deploy软件在容器里安装了Linux系统,在使用方面会有诸多限制,并不能发挥Linux的真实强大之处,于是我又百度又谷歌(真不容易),找到了真正可以把手机变成砖头,哦不,是变成掌上宝的方法,把手机刷成真正的Linux系统,PostmarketOS是可以在手机上原生运行的Linux系统,基于Alpine Linux开发。刷机后可以在旧手机上体验完整的Linux系统,注意是不要的旧手机哦,别拿新手机玩,容易成砖,你是土豪的话,那我就不劝了。

    我不是土豪,我去黄鱼网套了个几百块的二手一加6T手机(8+256G),还是挺心疼的,毕竟我之前的小米6刷这玩意不好刷,本来教程就少,所以就放弃了它。听说1加6手机好刷,可是也踩了很多坑,浪费了我很多时间,毕竟不是在搬砖就是在救砖,还救了两次砖,真是苦逼^o(╥﹏╥)o。

注意:在进行以下操作之前,请务必备份手机数据,并确保你了解刷机过程可能带来的风险。

如不小心搞成砖,可参考这个救砖,不复杂,但扎心。

一加社区

一加社区

一. 准备工作

将你的 1+6T 手机在设置系统那里将系统 更新到最新版本

1.1. 设备

① 一加 6T(OnePlus 6T)、typeC数据线(最好原装数据线,其他不好的线容易出问题,我就踩坑,变砖)
② 电脑(主流操作系统皆可)
③ 网络

1.2. 软件下载

fastboot:

① 电脑上拥有安卓调试工具(fastboot、adb),没有就从这里下载,可选加入系统 PATH 环境变量,不加也可以直接在文件夹运行。

postmarketOS刷机包:
① 进入 postmarketOS 镜像下载页,找到 OnePlus 6T;
② 两个版本可选:指明版本号的 stable 稳定版,edge 预览版,这里选择稳定版


③ 四个 UI 版本可选,选择其中之一即可;这里选择 phosh 版本;


④ 下载标有 latest 标志的目录中的两个镜像即可;下载完记得解压,我这里踩坑2,又变砖。.

二,解锁 Bootloader

一加 6T 解 BL 锁非常容易,只需要:
① 在 设置 - 关于 中,多次点击版本号以启用 开发者模式
② 在 设置 - 系统 中进入 开发者模式,启用 OEM 解锁 以及 高级重启
③ 长按 电源键,选择重启到 引导加载器


④ 将手机连接到电脑,输入:

## 直接用命令,是已加入到环境变量
fastboot oem unlock

如未加入到环境变量,需要去到fastboot 文件夹下,按住shit 键 ,然后鼠标右键文件夹内空白处,选 '在此处打开power shell窗口',命令需要加上相对路径

根据手机上的提示,解锁设备(UNLOCK THE BOOTLOADER);
注意:音量加减键控制上下,电源键确定


⑤ 经过较长的等待时间,手机会清除数据并自动开机。
至此,bootloader 已经解锁。

三,刷机

① 将手机重启至 fastboot 模式,连接到电脑;

注意:进入 fastboot 模式,可按住音量键的+键和音量键的-键一起按,然后再按住电源键一会就可以进入fastboot模式。


② 在电脑上打开终端,依次输入:

postmarketOS刷机包一定要先解压为带.img 的文件。

fastboot getvar current-slot

fastboot set_active b  ##上面的命令已经显示在b 的话就不用执行这条命令了

fastboot erase dtbo
fastboot flash boot 下载的 boot 镜像的路径 xxx-fajita-boot.img
fastboot flash userdata 另一个镜像的路径 xxx-fajita.img

③ 等待写入完成,重启设备:

fastboot reboot

手机进入重启,要把数据线拔掉。

手机重启完成后,进入系统需要

输入密码:147147  (我怎么知道你密码?我猜的吧)

账号默认为:user

最后进入系统的样子:

打开console 跑linux 命令:

这样你就拥有一台迷你Linux 服务器啦,是不是很鸡冻呢?

先别鸡冻,以后的路途还很艰辛,毕竟Alpine Linux 跟centos,ubuntu,redhat 还是有差别的。

四, 启用 SSH

在手机上的console 终端软件中输入:

sudo service sshd start

将 SSH 服务设置为开机启动:

sudo rc-update add sshd

将手机连上wifi无线网,获取设备 IP:

ifconfig

找到你的IP地址。

查看当前用户:

whoami

## 查看系统版本
cat /etc/alpine-release

然后编辑源配置文件

sudo vi /etc/apk/repositories

增加源地址

http://mirrors.aliyun.com/alpine/v3.16/main
http://mirrors.aliyun.com/alpine/v3.16/community

替换源地址后,更新一下

sudo apk update
sudo apk upgrade -a

安装Bash并设为默认终端

PostmarkOS默认的Bash为ash,为了更好的使用选择更熟悉的Bash作为默认终端

sudo apk add bash #安装bash
sudo vi /etc/passwd #修改默认配置

以root和user账户为例修改其默认终端

root:x:0:0:root:/root:/bin/ash
↓
root:x:0:0:root:/root:/bin/bash

user:x:10000:10000:Linux User,,,:/home/user:/bin/ash
↓
user:x:10000:10000:Linux User,,,:/home/user:/bin/bash

1. 停用GUI(可选)

停用GUI可以节省大量内存,用更多的资源来运行我们的容器等服务。

sudo rc-update del tinydm

然后reboot重启即可,大约可以节约出500MB以上的内存空间

sudo reboot

这样开机就不会进入图形界面,卡在loading界面,过一段时间后便自动息屏。

需要恢复只需要运行

sudo rc-update add tinydm default

2. 停用modemmanager(可选)
ModemManager用来控制移动宽带(2G/3G/4G)设备和连接,提供统一的高层API接口,类似于NetworkManager进行网络连接的移动宽带设备/连接,说白了就是可以用来管理手机卡,如果不需要插入上网卡做热点机的话,可以考虑将其停用.

sudo rc-update del modemmanager

需要恢复只需要运行下面的指令:

sudo rc-update add modemmanager default

在 你的电脑Windows 终端(任意 SSH 客户端)中连接上手机,电脑跟手机要连接同个WiFi网络哦,毕竟内网还没穿透,如果想要外网也能连接你的手机linux服务器,那就要进行内外网穿透,下篇文章讲解:

原创不易,填坑小能手,想要个棒棒糖甜一下苦逼的心。

打赏专用

下篇:[手机Linux PostmarketOS]二,cpolar实现内外网穿透-CSDN博客

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐