再谈谈Android上获得系统root权限的方法(转http://www.kunli.info/2009/08/20/heroroot/)

Coordinator
Mar 26, 2012 at 3:23 PM

在谈方法之前,先说说为啥有人试图获得Android系统中的root权限。

我总结一下,哪些用户适合去学习获得root权限的方法呢?

  1. 我是一名hacker,或者我喜欢对系统进行hacking
  2. 我是开发人员,命令行控制设备是必须的
  3. 我只是普通用户,但一些特殊软件我安装不了,要求root权限
  4. 我是一个软件超级体验狂,我每天不下载50个应用程序尝试晚上就睡不着。但Hero只有512MB的ROM,我要装app到SD卡上
  5. 我买Android就是为了定制系统的,不然爷早就入手iPhone了
  6. 我就喜欢啥都搞,爱搞需要理由吗?不需要吗?需要吗?………

哪些用户不适合去学习root权限呢?

  1. 我是电脑白痴,我不懂任何命令行和sdk的东西。我希望能随着HTC官方的升级而自动更新(OTA),不想每次更新都要刷一下机器
  2. 我买Hero就是拿来炫耀,泡美眉,偶尔打酱油的,你刷ROM改配置搞备份干我吊事
  3. 我一年也下不了10个app,HTC提供的商务功能完全够我用了,我还折腾手机干嘛?

好,请对号入座。如果你认为你是适合学习获得root权限的人群,请继续往下看。

 
先介绍一个当前刷root最简单的方法,以我手上的Hero为例子平台。国内目前流行的方法来自于这里,没有相关经验的朋友,请务必先看了刚才那篇文章,有一个所用image,工具和root权限大概的认识了,再接着看本篇文章。

不过,上面这个方法比较麻烦,对于Linux或者mac用户那是轻车熟路,但是对于普通Windows用户讲,看一堆命令可能都不爽。有一个最简单的方法,是MoDaCo Hero Patch recovery image的作者放出来的,当然方法中用的镜像就是他的镜像。用该方法,完成后自动就有了busybox,sudo权限,开机启动可编辑脚本等。大概步骤如下:

*****请注意,如果你是Windows用户,不管怎样都先看看刚才我提到的那篇文章,有一个环境配置的概念,我这里不讲任何sdk和安装工具的配置*****

  1. 下载这个 zip文件。解压缩到某一个文件夹目录下,并在此路径下打开命令行界面(CMD或者Terminal)
  2. 确保你机器里有SD卡,打开了USB调试模式,机器中已经装了Android设备的驱动。连接机器,保证adb能认出你的机器。
  3. 用命令adb push update-hero-signed.zip /sdcard/update.zip来将update-hero-signed.zip放在SD卡上并改名。update-hero-signed.zip是解压出来的文件之一。
  4. 用adb shell reboot bootloader命令重启设备到bootloader下,要确保设备上出现了红色的“fastboot Usb”。像这样:
  5. 输入命令“fastboot boot cm-hero-recovery.img”(注:如果你在此步遇到”waiting for device”提示信息并停住了,请留言,我告诉你我的解决方法)
  6. 选择“apply update.zip from SD card”选项
  7. 重启,完成

明白怎么回事了么?实际上就是把那篇文章中一堆的命令打包到script中自动完成了,update.zip里面就是要添加到你的system中的各种工具。傻瓜式安装啊。

下面说一说,到底获得root权限后有什么好处呢?先举个简单的例子。我们都知道,当Hero通过USB线连上电脑时,讨厌的sync工具就会自动启动,老是在notification bar那里看到,很烦。对于Windows用户,还有工具可以同步,对于Mac/Linux用户来说,没用。有没有办法解决呢?有。用下面的命令

adb remount
adb shell rm /system/app/PCSCII*

这里的关键就是adb remount,这是一个重新mount你的分区的命令,让你的system分区从只读变成可读可写,只有获得了root权限才可能运行。

同样的道理,我不喜欢HTC提供的QuickOffice系列工具,appstore里面有更好的,我又不想保留我不会使用的app,怎么弄呢?

adb remount
adb shell rm /system/app/Quick*

其他东西就以此类推了。

还有朋友会说,我喜欢Hero的外形,但是我不喜欢HTC的Sense UI,怎么能回到Android本身系统的样子呢?首先,请允许我向你表示敬意,能不喜欢Sense UI的审美观还是很难得的,我是做不到的。其次,办法当然是有的,只是这次我们删除的东西会多一些。

adb remount
adb shell cd /system/app
adb shell rm Rosie.apk
adb shell rm htcbookmarkwidget.apk
adb shell rm htccalendarwidgets.apk
adb shell rm htccontactwidgets.apk
adb shell rm htcmailwidgets.apk
adb shell rm htcmsgwidgets.apk
adb shell rm htcsearchwidgets.apk
adb shell rm htcsettingwidgets.apk
adb shell reboot

重启之后…….相信我,整个世界清静了。

恩,获得root权限后还有很多有意思的应用,以后有时间介绍。