今天得空,跟大家唠唠我之前折腾一个老安卓手机的事儿。那会儿手上正好有个旧手机,好像是安卓2.3系统的,具体啥牌子记不清,反正挺老的。放着也是吃灰,就想着看看能不能给它root,装点有意思的东西或者删掉些自带的垃圾应用。
网上随便搜搜,看到有人提到一个叫gingerbreak的工具,说是专门搞定安卓2.3(姜饼)系统的。看着挺对路,就决定试试看。
准备工作
第一步,肯定是把那台老古董手机翻箱倒柜找出来,充上电。还能开机,不错。然后就是开发者选项里的那个老规矩,得打开USB调试模式。我记得那会儿好像得去“关于手机”里头,对着那个“版本号”猛点几下,开发者选项才会出来。进去之后,把“USB调试”勾上。
第二步,得找到这个gingerbreak工具。这玩意儿现在估计不好找,我当时也是费点劲才弄到一个据说是能用的。好像是个可执行文件,不是直接安装的APK。
开始动手
准备好就开始干活:
- 先把手机用数据线连上电脑。电脑上得装好ADB工具,这个就不细说,搞机的朋友应该都懂。
- 打开电脑的命令行窗口(就是那个黑框框)。
- 用
adb push命令,把下载好的那个gingerbreak文件传到手机的/data/local/tmp/目录下。为啥是这个目录?因为一般这地方有执行权限,方便操作。 - 接着输入
adb shell,这样就能在电脑上操作手机的命令行。 - 进到刚才放文件的目录,就是敲
cd /data/local/tmp/。 - 给那个gingerbreak文件加上执行权限,命令是
chmod 755 gingerbreak。不给权限它跑不起来。 - 最关键的一步来,运行它!直接敲
./gingerbreak,然后回车。
执行之后,命令行就刷刷地跑代码,手机屏幕可能没啥反应,也可能黑一下。这时候就只能等着,心里默念“搞定它,搞定它”。我记得当时好像等一两分钟,命令行提示完成,或者有时候手机会自动重启一下。
检查成果
它跑完(或者重启完),总得看看是不是真的root成功。我当时是这么检查的:
- 手机连着电脑,再次敲
adb shell。 - 进去之后,看那个命令提示符。如果原来是符号,现在变成符号,那多半就是成功!一般就代表是root权限。
- 或者,在
adb shell里试试输入su命令,看看能不能切换到root用户。 - 有些说法是,用gingerbreak之后,需要手动执行一下
/data/local/tmp/sh才能拿到真正的root shell,这个我也试,确实有时候需要这样。
幸运的是,我那次折腾还真成功。手机重启后,虽然没自动装上Superuser或者SuperSU这样的权限管理应用,但是通过adb shell进去确实能拿到root权限。后面我就自己手动装个权限管理软件,方便后续给其他应用授权。
一点感想
现在回想起来,用gingerbreak这种方法真是有点年头。那时候root手机感觉就跟探险似的,各种工具、各种漏洞满天飞,成功就特有成就感。这工具主要就是利用当时系统(好像是叫vold的进程)的一个漏洞,挺有时代特色的。
这都是老黄历。现在的安卓系统版本高,安全性也强多,这种老掉牙的工具基本没用。也就是记录一下当时瞎折腾的过程,给玩机经历留个档。如果你手上也有个差不多时期的老古董想废物利用,或许可以考古试试,但一定记得备份重要数据,毕竟搞机有风险,变砖也不是不可能。
好,今天就分享到这儿,纯粹是个人的一次实践记录,希望能给大家看个乐呵。
0 评论