放暑假了,正在苦于训练的模型不收敛的我看到了几个坏掉的手机,想到从很久很久以前我就想学给手机刷机,可能是制造商对刷机有防御,我一次也没成功过,但是,好像之前鼓捣过一个机顶盒。
这个机顶盒在之前就想刷成Linux,但是实在不会整,最后看着教程,通过U盘里放升级包的形式破解安装了贝当市场。
我又把它翻出来了。
这玩意虽然只有1G内存,但如果只是放那里当个简单的服务器应该还可以吧!
连接
对于Android,首先是要想办法连接ADB。
这玩意儿有两个USB口和一个没焊排线的串口,网上说连到电脑上就行,于是我用双头USB连给电脑了,但电脑根本不识别,我没记错的话USB是有主客机之分的,客机要向主机发送自己的类型,所以这两个设备不会相互识别。
处了这两个USB口,可能有用的就只有串口了,我费很大力把排线焊上了,波特率115200,
果然,启动后就看到linux终端了,能交互!
但是,我即不懂Linux又不懂Android,咋整?
我列了一下linux的设备目录,这设备肥肠肥肠多,整的我有点慌,是不是刷完之后就都不能用了呢?
分析日志
机器在启动的时候会不断的发日志过来,大致就是协调硬件,引导操作系统的过程,在日志刚开始,我看到了这个东西:
U-Boot 2015.01-g7fe6c4c (Jul 06 2020 - 16:49:09)
就从U-Boot这里入手。
这玩意启动之后貌似会加载驱动程序,我看到的有红外传感器,VPU(视频处理单元)什么的。
我发现当我插入U盘的时候,试图它会在初始化USB的时候引导里面的 factory.img ,也就是说我在U盘放一个 factory.img 它就会启动??
我找了一个刷机包,随便找了个.img文件改了名放了进去,结果它读取完img文件后会继续引导Android并且会引导失败...
使用U-Boot命令
本来我是用串口调试器连接的机器,但突然想到换个软件,体验一下远程linux终端的感觉,然后我发现日志里有一句话,说是按任意键停止自动引导。
然后我就停留在U-Boot上了。这里可以交互,但是它可以用的命令和我在网上查的命令大有不同,比如,我查的它支持网络,但是它完全没有网络功能,而且有各种叫 sub-system 的命令,貌似是用来初始化设备的。
退一步
走到上面已经超出我的能力范围了,就算找到刷机方法估计也没有合适的系统镜像把...
不如我把原来的安卓清理干净,谁说Android不能是服务器呢?
最后的最后,我用linux的终端把IPTV相关应用和上次破解安装的应用全部删掉了,安装了一个启动器(就是桌面,可以点击图标启动应用的),顺便加了一点散热。
安卓使用linux内核终端好像是不可以的,难道我还要学Android开发?!!