一加切换槽位黑砖 9008 了,还能切换回槽位 A 吗

4 月 2 日
 abc8678
更新了 Oshin 模块,把状态栏日期格式改为年月日时分秒,中间写了个\n 导致系统界面反复重启,闪屏。重启到 twrp,想关闭 root ,但这个旧版本无法解密,于是没啥选项了,逛一圈选择重启切换槽位。接下来就是黑砖了,连接电脑出现 9008 。上次(年初)也因为一些小打小闹进入 9008 含泪格式化,此时大家都在沸沸扬扬的讨论 9008 要被熔断了,于是一直不更新,还是刷回出厂版本,禁用更新。现在还是问一下有没有一丝希望,比如刷回同版本系统能不能不清空数据。
Ace6
4833 次点击
所在节点    Android
21 条回复
MuyuQ
4 月 2 日
用手法或者工具退出 9008 ,重启过程中按组合键让设备进入 fastboot,重新 fastboot set_active --force a ,不知道一加支不支持这个命令。
怎么从 9008 重启,怎么组合键进 fastboot ,你自己查一下吧。
如果能进 fastboot 的话,可以看看 fastboot getvar all | findstr slot
不过你既然已经进 9008 了,说明两个 slot 可能都置 unbootable 了,还能启动的概率不大,但也还有一丢丢希望。

现在 data 分区都是加密的,你直接线刷的话,密钥会对不上的吧。
abc8678
4 月 2 日
听说槽位 B 默认是空的,而我一直停在出厂版本从未更新。估计就是因为槽位 B 没东西导致的
wenyifancc
4 月 2 日
@abc8678 我曾经在小米 14Pro 上通过 fastboot 导致黑砖,我确定切换的槽位是有内容的,最终是通过 9008 重新刷回来的,不用刷 userdata 可以保数据
wanghui22718
4 月 2 日
不接电脑,重启应该能进 slot a 的 fastboot ,换下 slot a 的 recovery 试下
msmtool 不知道能不能保留 data 刷机
wanghui22718
4 月 2 日
所以,搞机第一条是备份数据。。。
v1
4 月 2 日
@MuyuQ @abc8678 我的 1+5 和 1+7pro 都可以,以前研究自定义内核的时候经常用,A 分区放官版,B 分区放自定义的

"fastboot set_active a" A 分区
"fastboot set_active b" B 分区
abc8678
4 月 2 日
@wenyifancc 我也刚从小米转一加不久,缺少一加经验。也是因为 root 才换的一加。现在正在用小米刷 v 站提问问题
sir283
4 月 2 日
能进 fastboot 吧?,切换回去就行了。
cescqh
4 月 2 日
糊涂啊,第一个装的肯定应该是救砖模块啊
abc8678
4 月 2 日
@cescqh 听说 kernelsu 自带救砖,或者进安全模式不就行了。实际遇到问题,救砖不起效果,因为确实能开机,系统界面闪屏只是系统内的事情 系统本身可以正常启动。安全模式,按不出来
AoEiuV020JP
4 月 2 日
还能 flash 吗,不管什么槽位直接全部 flash 进去就好,我最近一加 pad2pro 同时升级系统和 kernelsu 出现无限重启就这么搞,
fastboot flash --slot=all boot boot.img
fastboot flash --slot=all vendor_boot vendor_boot.img
fastboot flash --slot=all dtbo dtbo.img
fastboot flash --slot=all init_boot init_boot.img
其他镜像不带 slot 全部一起刷一遍就好了,
abc8678
4 月 2 日
@AoEiuV020JP 屏幕不亮 我可能得听一楼的。先想办法进入 fastboot 模式,然后才能这么搞
neoshui
4 月 2 日
kernelsu 自带救砖,强制重启几次就会关掉所有模块,你现在可以尝试切回原来的槽位。连续强制重启几次,或者刷回不带 root 的原 boot 或原 init_boot
MuyuQ
4 月 2 日
@v1 只要 OTA 升级过,两个 slot 就会相互备同步的吧。OTA 过程中会把更新 cow 文件刷到非激活 slot ,等切 slot 启动成功以后会再覆盖回来。最后两个 slot 的数据会一样。 一加难道不一样么?
v1
4 月 2 日
@MuyuQ AB 分区的意义就是为了防止升级失败导致的设备故障,你现在是 slot_A ,OTA 肯定是写入 slot_B 并激活,怎么会两个 slot 同步?
MuyuQ
4 月 2 日
@v1 问了下 AI 。
有些厂是会同步的,三星华为荣耀。在系统完全启动以后才会同步,同步以后任意一个 slot 如果损坏的话,系统自动切一下 slot 就可以恢复现场,用户无感。
小米一加谷歌这几个厂选择不同步,好处是可以主从备份,缺点是如果主副两个系统如果差异过大,会导致不开机,没办法恢复现场。

```AI 回答
你这句问到了 A/B 设计最痛、最真实、最容易黑砖的核心点。
主槽损坏 → 切回旧版本副槽 → 因为版本 / 安全补丁差距太大 → 直接开不了机!
下面我用最精简的逻辑讲清楚为什么。
1. 为什么版本差太大,切槽会直接炸?
Android 从 Android 10+ 开始,有三个强绑定、不可跨版本的东西:
系统分区版本( system/vendor/boot )
安全补丁等级( security patch level )
data 分区的加密密钥、元数据、应用数据结构
这三者是强绑定的。
```
abc8678
4 月 2 日
@MuyuQ 买到手就断网并冻结了系统更新,然后才开网络,从来没更新过。因为听了出厂版本最佳的说法。后来有一次被迫清数据刷机也是刷了同版本号,也断网屏蔽更新了
v1
4 月 2 日
@MuyuQ 很好
@abc8678 出厂之后的第二个、第三个版本才是最好的,有一些调优和对 bug 的修复
Foobar2000K
4 月 2 日
进入 FastbootD 模式重新刷写全分区就可以了吧应该
skylancer
4 月 6 日
卡 9008 怕不是 abl 都给你整坏了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1202979

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX