刷机教程
TL;DR(太长不看版)
- 大体上分为三步,所有的问题都可归结到这三步之内:
- 解锁 BootLoader
- 刷入 Recovery
- 刷入 Rom(刷机包)
前提
- 备份好数据
- 极其重要
- 需要备份的常见数据详见
- 一般需要将备份的数据复制到电脑上
- Rom
- 需要与自己手机型号相对应
- Recovery
- 支持的 Android 解密方式与 Rom 的 Android 版本号相同
- Recovey 镜像支持的固件类型也需要与手机型号相同
- 下载的 ADB(Android Debug Bridge,安卓调试桥接工具)
- ADB 可以添加至环境变量(Windows 用户)
- Magisk
- 如果需要 ROOT 权限可以带上
注意
-
刷机之前请一定要确保手机电量充足
-
每次刷机之前最好都备份一下数据,部分情况下必须备份数据:
- 如果刷入的 Android 版本与刷入之前的 Android 版本不同:
- Google 每次升级 Android 版本都会换一种加密方式,各版本不互通
- 如果不备份数据,意味着数据无法解密,会全部丢失,包括相册,联系人,应用数据等
- 厂商推送版本不同时:
- 小米的 稳定版 和 开发版 ,两者不可以混刷
- 更换第三方 Rom
- 如 PixelExperienceRom 和 LineageOSRom
- 相当于两个系统,当然不能混刷
-
Rom 包一定要与自己手机型号对应
- 需要精确到
- 品牌(OnePlus, Redmi, etc.)
- 型号(Note 7, Note 10, etc.)
- 是否为专业版(Note 7, Note 7 Pro, etc.)
- 否则会因为固件冲突导致硬件不可逆地损坏,成为 Brick(砖头手机)
- 不要抱有侥幸心理,到时候只能买新手机(因为不保修)
- 需要精确到
-
一般手机都会有个独一无二的代号,直接找代号最精确,下面是一些例子
手机型号 | 代号 |
---|---|
Redmi Note 7 Pro | violet(紫罗兰) |
Redmi Note 7 | lavender(薰衣草) |
Xiaomi 12S Pro | unicorn(独角兽) |
OnePlus 5T | dumpling(饺子) |
- 如今市场上,对于刷机比较包容的品牌基本只有 小米(MI)和 一加(OnePlus) 了
- 成功刷入 Rom 后请一定设置一个系统密码,然后重启到 Recovery 观察是否能解密
- Android Version >= 9,详细说明见刷入 Rom
- 能解密,则可以开始恢复数据了
- 不能解密,最好另找 Rom 或者 Recovery
- Recovery 是能救命的,请不要抱有不能解密也没关系的幻想
- 解锁 BootLoader 会清空手机数据
- 一般来讲 BootLoader 解锁之后可以 Relock(回锁),但是不建议锁回去,容易出意外
详细步骤流程
解锁 BootLoader
-
手机厂商为了保护用户数据安全,禁止用户胡作非为,一般默认锁住 BootLoader
-
BootLoader 如字面意思:引导加载器,无法加载引导就无法加载系统
-
解锁 BootLoader 的两种方式
- 9008 短接
- 一般需要短路主板,需要操作硬件
- 不推荐
- 手机品牌的官方解锁工具
- 小米官方 MiFlash Unlock
- 一加开发者工具
- 9008 短接
-
如果需要解锁,各自按照品牌的提示去做就可以
-
一般需要用到下面几条命令
- adb 需要加入 Path 环境变量,否则还需要带上 adb 的路径
- 手机已经用数据线连接到电脑,并开启 usb 调试
# 重启到 fastboot 模式
# 或者
# 重启同时按住 **音量下键** 和电源键,持续八秒以上
# 两种方法都能重启到 fastboot 模式
adb reboot bootloader
# 确认手机连接到电脑并被 adb 识别
fastboot devices
# 解锁 bootloader
# 如果有解锁码的话还需要再跟一个解锁码参数
fastboot oem unlock
# 查看当前锁状态
fastboot oem get-bootinfo
- 如果出现 UNLOCKED 字样一般就成功了
- 各个手机品牌不一样,具体解锁方法可以查看官网教程和其他教程
刷入 Recovery
- 解锁 BootLoader 成功后,重启到 fastboot 模式
- 一般需要输入下面这几条命令
# 刷入 Recovery
# 其中 ${path_to_recovery_image} 需要替换为 Recovery 镜像的路径
# 一般为当前目录即可:recovery.img
fastboot flash recovery ${path_to_recovery_image}
# 重启到 Recovery
# 或者
# 重启同时按住 **音量上键** 和电源键,持续八秒以上
# 两种方法都能重启到 Recovery 模式
adb reboot recovery
- 如果不能重启到 Recovery 模式,则该 Recovery 镜像有问题,需要换一个镜像
- 可以设定一个时间(一般为三分钟),如果还不能重启,另找镜像重复刷入 Recovery 操作,直到能够正常进入 Recovery 模式为止
- 一般常见权威 Recovery 镜像
- TWRP
- Orange Fox
- 获取 ROOT 权限一般需要在成功刷入系统 Rom 之后
刷入 Rom
- 进入 Recovery 模式之后先清除数据
- 清除类型根据需要进行选择
- 相应说明参见
清除类型 | 需要勾选的分区 |
---|---|
双清 | Dalvik/ART Cache,Cache |
三清 | Dalvik/ART Cache,Cache,Data |
四清 | Dalvik/ART Cache,Cache,Data,System |
- 刷入 Rom
- 找到拷贝到手机内存里的系统 Rom 包,刷入即可
- 关于 ROOT 和 Magisk
- Magisk 不能和 Rom 一起刷,因为不起作用
- 必须要等系统能够正常开机,然后再重启到 Recovery 刷入 Magisk 才起作用
- 一般来讲刷入 Magisk.apk 之后就有 ROOT 权限了
- Magisk 更新之后安装包和线刷包合二为一了,都为 Magisk
- 设置系统密码后,重启到 Recovery 观察是否能解密
- Android 9 以上,厂商会自动锁定 system 来防止用户进行危险操作
- 低版本不会出现提示解密的窗口,Data 分区不加密
恢复数据
- 将之前备份的数据复制到手机上,按照指引恢复数据即可
- Enjoy your new system!
补充
- 其实刷机分两种
- 卡刷
- 将刷机包拷入到手机内存,使用 Recovey 直接刷入
- 一般为相同系统更新,清除类型为双清
- 要不然系统和用户数据都没了
- 有限制,必须要把想要更新的 ROM(Android系统)拷贝到 SD 卡 或者通过 fastboot 拷贝到内部存储中
- 线刷
- 利用电脑使用 fastboot 刷入
- 一般为升级 Android 版本和更换一个完全不同类型的系统
- Android 10 -> Android 13
- LineageOS -> PixelExperienceOS
- 或者兼而有之
- 清除类型一般为四清,毕竟都换系统了,也备份数据了
- 卡刷
- 手机文件存储结构
- 此处显示的为 Google 推出 A/B 分区之前的结构示意图
手机 电脑
+---------------------------+
| bootloader引导区 | BIOS
+---------------------------+--> fastboot 线刷模式
| boot启动区 | recovery恢复区 | MBR 硬盘引导区
+-----------+---------------+--> recovery 恢复界面
| system系统区 | 系统文件(Windows, Program Files, etc.)
+---------------------------+--> 手机界面 用户图形界面
- 手机启动过程
- 流程
- BootLoader 引导区代码
- 对硬件进行必要的初始化和检测错误
- 若启动时没有参数则正常启动
- 若启动时有相应的参数,则进入 fastboot 线刷模式或 Recovery 恢复界面
- 加载 Boot 启动区代码
- 加载 system 系统区代码
- 显示手机图形界面,正常使用
- BootLoader 引导区代码
- fastboot 手机上一般没有操作界面
- 流程
- 刷机没有那么容易成砖,一般就几种情况
- 刷到一半没电了
- 刷入了不兼容的固件(Rom, Recovery, etc.)
附录:需要备份的常见数据
- ADB
- Rom
- 目前使用的 Rom
- 即将刷入的 Rom
- Recovery
- 目前使用的 Recovery
- 即将刷入的 Recovery
- 应用程序备份
- Android 高版本推荐 SwiftBackup
- Android 低版本推荐 TitaniumBackup
- 备份完毕之后,将文件从手机拷贝到电脑上
- Magisk
- 应用程序
- Shamiko
- Gboard 词库
- Zygisk
- 图片,视频
- 如果有云备份就不用
- 但是最好还是备份一下
- 电子书
- 建议专门建立一个文件夹
- 下载内容
- 建议配合存储空间隔离使用,只备份一个文件夹
- 各种应用程序的配置文件
- 存储空间隔离
- list 背单词
- App Ops
- etc.
附录:清除类型和分区说明
双清
- Dalvik/ART Cache,Cache
- 只清除缓存,不清除系统和用户数据
- 双清一般用在相同系统版本进行 OTA 升级时
- 比如 LineageOS 16 的周更包,就可以使用双清刷入
三清
- Dalvik/ART Cache,Cache,Data
- 多了用户数据,三清后刷机失败,还可以进入系统
- 刷机失败:Recovey 在输入检查时出现错误
- 如果刷机进行中,手机突然没电,无论怎么清都没用,手机报废
四清
- Dalvik/ART Cache,Cache,Data,System
- 系统、缓存、用户数据等全部清除
- 清除了之后如果刷机失败,会进不去系统
分区说明
- Wipe Dalvik Cache
- 清空虚拟机缓存
- 可以解决一些程序 FC 的问题
- Wipe Cache
- 清除系统缓存
- 刷机前执行
- 系统出问题也可尝试此选项,一般能解决
- Wipe System
- 清除操作系统数据
- 想要干净的可以清除此项
- Wipe Data
- 清除用户数据并恢复出厂设置
- 刷机前必须执行的选项
- Wipe Internal Storage
- 清除内置存储
- Wipe USB OTG
- 清除挂载的 usb 设备,比如 U 盘等
致谢
协议
- 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可