找回密码
 注册
快捷导航
查看: 14325|回复: 25

root并删除部分系统app后升级教程

[复制链接] |自动提醒
阅读字号:

18

回帖

3

积分

744

资产值

中级会员 Rank: 2Rank: 2

注册时间
2011-5-24
发表于 2012-3-23 08:56:51| 字数 2,397| - 中国–广东–深圳 电信 | 显示全部楼层 |阅读模式
今天决定把系统从0074升级到0089。前几天已经root了,刷了CWM recovery,删了一堆系统软件,不能直接升级了,也不想恢复后升级,一来繁琐,二来升级后要重新root,虽然知道0089也是能root,决定修改升级包,也为以后的升级积累经验。
首先到http://download.lenovo.com/slates/think/tablet1/下载升级包。解压。
把升级包中system/xbin/busybox删除,这个busybox太水了。
把升级包中recovery删除
然后用文本编辑软件打开包中META-INF\com\google\android\updater-script文件。这是升级时运行的脚本。
把所有apply_patch_check改为apply_patch_check_when_exist
把所有apply_patch改为apply_patch_when_exist
注意,进行上面的操作时,在编辑器的替换界面中一定要设置整个词,因为脚本中本身也有apply_patch_check_when_exist及apply_patch_when_exist,如果不设置整个词,替换后就成apply_patch_check_when_exist_when_exist了。
很奇怪,下面语句居然通不过验证,删掉
        assert(getprop("ro.product.device") == "Indigo" || getprop("ro.build.product") == "Indigo");
找到
      delete("/system/app/LenovoBookmarkWidget-1.0.023.apk",
       "/system/app/LenovoConfigFileHandler-1.2.001.apk",
       "/system/app/LenovoSetupWizard-1.2.001.apk",
       "/system/app/MobiHandAppStore_b1.0.4.538.apk",
       "/system/app/dxtg-lenovo-usa_3.003.1049.apk", "/system/bin/aescrypt",
       "/system/bin/redsocks", "/system/bin/redsocksctls",
       "/system/app/LenovoAppShop_K1_b219.apk",
       "/system/app/LenovoBookmarkWidget-1.0.022.apk",
       "/system/app/LenovoConfigFileHandler-1.0.007.apk",
       "/system/app/LenovoSetupWizard-1.1.001.apk",
       "/system/app/dxtg-lnv-u1_3.003.999.apk",
       "/system/app/Superuser.apk", "/system/bin/su", "/system/xbin/su",
       "/system/recovery.img");
删掉红色那行。
再删掉以下几行
        delete_recursive("/system/xbin");
                这里有我们的busybox和su。怎么删掉。
        delete("/system/recovery-from-boot.p", "/system/etc/install-recovery.sh");
                联想的/system/etc/install-recovery.sh要重写recovery,绝对不能让他干,只要cwm recovery在,root权限就算丢了也能很快弄回来。
        ui_print("Unpacking new recovery...");
        package_extract_dir("recovery", "/system");
                联想的recovery。
        symlink("busybox", "/system/xbin/fdisk");
                阉割掉的busybox
找到第一个unmount("/system");在前面加上
set_perm(0, 0, 04755, "/system/xbin/su");
因为脚本中有set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");语句把su的权限搞丢了。
如果你的su文件在/system/bin下,则相应改为
set_perm(0, 0, 04755, "/system/bin/su");
到了这一步,基本上就可以了,如果不想要自动安装的位于data中的软件
把package_extract_file("pia/PokeTALK.apk","/data/app/com.poketalk-1.apk");之类的语句删除。还可以进一步删除升级包中pia目录。
保存,打包成zip文件,签名,复制到SD卡中,进入cwm recovery升级成功。

[ Edited by  feskey on 2012-3-23 09:50 ]

评分

参与人数 1技术分 +1 资产值 +200 收起 理由
feskey + 1 + 200

查看全部评分

617

回帖

0

积分

835

资产值

入门会员 Rank: 1

注册时间
2007-7-21
发表于 2012-3-23 09:40:45| 字数 5| - 中国–四川–成都 电信 | 显示全部楼层
先做沙发!
X61 T8100 3G
ThinkPad Tablet 32G+3G
回复 支持 反对

使用道具 举报

617

回帖

0

积分

835

资产值

入门会员 Rank: 1

注册时间
2007-7-21
发表于 2012-3-23 09:57:32| 字数 28| - 中国–四川–成都 电信 | 显示全部楼层
技术帖,就是有点乱,能不能再整理个简洁易懂,一看就会的,
X61 T8100 3G
ThinkPad Tablet 32G+3G
回复 支持 反对

使用道具 举报

494

回帖

6

积分

870

资产值

高级会员 Rank: 2Rank: 2

注册时间
2011-10-5
发表于 2012-3-23 09:57:58| 字数 128| - 中国–广东–深圳 电信 | 显示全部楼层
写的非常好,太好了,本来我今天还想请yc帮忙写这个教程呢!标题帮你加上教程两个字了!加精奖励技术奖励nb啊!

提醒一下其它对recovery不熟悉的朋友,尽量以补充文件,rootkeeper法来保留root升级,实在补不齐文件或者比较有经验才用这个方法升级!
What even you did , still cool !
回复 支持 反对

使用道具 举报

4110

回帖

60

积分

1万

资产值

钻石会员 Rank: 3Rank: 3Rank: 3

注册时间
2005-8-20
银牌荣誉勋章(注册10年以上会员)
发表于 2012-3-23 10:27:10| 字数 79| - 中国–四川–凉山彝族自治州 电信 | 显示全部楼层
好帖!学习了!

猜想,破解了文件校验,保留了recovery,是不是能刷任何版本呢?

如果还原到OTA1的recovery,然而系统又是OTA2,会是什么结果呢?
不畏浮云遮望眼,只缘身在最高层
X61 P9700 SXGA+ AFFS
X61T L7500OC SXGA+ AFFS
T61 P9700 UXGA AFFS
P52 E2176M P2000 4K
回复 支持 反对

使用道具 举报

4110

回帖

60

积分

1万

资产值

钻石会员 Rank: 3Rank: 3Rank: 3

注册时间
2005-8-20
银牌荣誉勋章(注册10年以上会员)
发表于 2012-3-23 10:30:05| 字数 239| - 中国–四川–凉山彝族自治州 电信 | 显示全部楼层
QUOTE:
Posted by feskey on 2012-3-23 09:57
写的非常好,太好了,本来我今天还想请yc帮忙写这个教程呢!标题帮你加上教程两个字了!加精奖励技术奖励nb啊!

提醒一下其它对recovery不熟悉的朋友,尽量以补充文件,rootkeeper法来保留root升级,实在补不 ...


这个修改脚本我可写不了,我能改的那么好的话,就不会刷cwr的升级包了,楼主实在强大!比http://www.thinkpadtabletforums的还强,那边升级后root是丢失的
不畏浮云遮望眼,只缘身在最高层
X61 P9700 SXGA+ AFFS
X61T L7500OC SXGA+ AFFS
T61 P9700 UXGA AFFS
P52 E2176M P2000 4K
回复 支持 反对

使用道具 举报

4110

回帖

60

积分

1万

资产值

钻石会员 Rank: 3Rank: 3Rank: 3

注册时间
2005-8-20
银牌荣誉勋章(注册10年以上会员)
发表于 2012-3-23 10:38:33| 字数 113| - 中国–四川–凉山彝族自治州 电信 | 显示全部楼层
官方升级脚本里有delete superuser.apk、su,说明官方早就知道有root这回事了,据说修改recovery也是为了堵住漏洞防止root,想到feskey版主可以换主板,真是觉得不可思议啊

想换主板的同学可得抓紧了
不畏浮云遮望眼,只缘身在最高层
X61 P9700 SXGA+ AFFS
X61T L7500OC SXGA+ AFFS
T61 P9700 UXGA AFFS
P52 E2176M P2000 4K
回复 支持 反对

使用道具 举报

494

回帖

6

积分

870

资产值

高级会员 Rank: 2Rank: 2

注册时间
2011-10-5
发表于 2012-3-23 10:39:08| 字数 148| - 中国–安徽–合肥 联通 | 显示全部楼层
QUOTE:
Posted by yc_qiang on 2012-3-23 10:30


这个修改脚本我可写不了,我能改的那么好的话,就不会刷cwr的升级包了,楼主实在强大!比http://www.thinkpadtabletforums的还强,那边升级后root是丢失的



这个修改脚本,确实强大,感觉专业人员!
What even you did , still cool !
回复 支持 反对

使用道具 举报

4670

回帖

3

积分

1万

资产值

初级会员 Rank: 1

注册时间
2009-10-22
发表于 2012-3-23 10:43:42| 字数 14| - 中国–广东–深圳 电信 | 显示全部楼层
牛人啊,膜拜一下,太感谢了!
Work:X1 Carbon(i7+4G+256G)
Office : Surface Pro3
BT&HTPC:BenQ S73E
回复 支持 反对

使用道具 举报

4110

回帖

60

积分

1万

资产值

钻石会员 Rank: 3Rank: 3Rank: 3

注册时间
2005-8-20
银牌荣誉勋章(注册10年以上会员)
发表于 2012-3-23 11:05:28| 字数 132| - 中国–四川–凉山彝族自治州 电信 | 显示全部楼层
QUOTE:
Posted by feskey on 2012-3-23 10:39



这个修改脚本,确实强大,感觉专业人员!


加上http://www.ibmnb.com/viewthread.php?tid=1192496帖主cecilshou,这两位我都认为是联想内部开发人士
不畏浮云遮望眼,只缘身在最高层
X61 P9700 SXGA+ AFFS
X61T L7500OC SXGA+ AFFS
T61 P9700 UXGA AFFS
P52 E2176M P2000 4K
回复 支持 反对

使用道具 举报

4670

回帖

3

积分

1万

资产值

初级会员 Rank: 1

注册时间
2009-10-22
发表于 2012-3-23 11:53:18| 字数 186| - 中国–广东–深圳 电信 | 显示全部楼层
QUOTE:
Posted by ttrrii on 2012-3-23 08:56
今天决定把系统从0074升级到0089。前几天已经root了,刷了CWM recovery,删了一堆系统软件,不能直接升级了,也不想恢复后升级,一来繁琐,二来升级后要重新root,虽然知道0089也是能root,决定修改升级包,也为 ...

对于如何用testsign.jar修改签名不懂......求解!
Work:X1 Carbon(i7+4G+256G)
Office : Surface Pro3
BT&HTPC:BenQ S73E
回复 支持 反对

使用道具 举报

4110

回帖

60

积分

1万

资产值

钻石会员 Rank: 3Rank: 3Rank: 3

注册时间
2005-8-20
银牌荣誉勋章(注册10年以上会员)
发表于 2012-3-23 12:33:33| 字数 191| - 中国–四川–凉山彝族自治州 电信 | 显示全部楼层

回复 #11 名剑.Roger 的帖子

这点小事,就不麻烦楼主这样的大神了,我来解答吧
安装jre,点此下载
将testsign.jar和需要签名的升级包放在同一个目录,打开命令行,粘帖命令java -classpath testsign.jar testsign name.zip name_sign.zip,其中的name能否任意设置未知,我是用ThinkPadTablet_A310_02_0039_0086_US_CWR替换的。
不畏浮云遮望眼,只缘身在最高层
X61 P9700 SXGA+ AFFS
X61T L7500OC SXGA+ AFFS
T61 P9700 UXGA AFFS
P52 E2176M P2000 4K
回复 支持 反对

使用道具 举报

4670

回帖

3

积分

1万

资产值

初级会员 Rank: 1

注册时间
2009-10-22
发表于 2012-3-23 13:05:08| 字数 744| - 中国–广东–深圳 电信 | 显示全部楼层
QUOTE:
Posted by yc_qiang on 2012-3-23 12:33
这点小事,就不麻烦楼主这样的大神了,我来解答吧
安装jre,点此下载
将testsign.jar和需要签名的升级包放在同一个目录,打开命令行,粘帖命令java -classpath testsign.jar testsign name.zip name_sign.zip ...


再次谢谢yc兄帮了这么多,但是我输入命令后好像出错:

E:\testsign_tool\sign>java -classpath testsign.jar testsign ThinkPadTablet_A310_
02_0039_0086_US.zip ThinkPadTablet_A310_02_0039_0086_US_sign.zip
java.util.zip.ZipException: error in opening zip file
        at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.<init>(Unknown Source)
        at java.util.jar.JarFile.<init>(Unknown Source)
        at java.util.jar.JarFile.<init>(Unknown Source)
        at testsign.main(testsign.java:361)

BTW:偶的testsign是从http://forum.xda-developers.com/showthread.php?t=683241这里下载的
偶的ZIP文件是直接用winrar压缩的

[ Edited by  名剑.Roger on 2012-3-23 13:07 ]
Work:X1 Carbon(i7+4G+256G)
Office : Surface Pro3
BT&HTPC:BenQ S73E
回复 支持 反对

使用道具 举报

4670

回帖

3

积分

1万

资产值

初级会员 Rank: 1

注册时间
2009-10-22
发表于 2012-3-23 13:15:10| 字数 236| - 中国–广东–深圳 电信 | 显示全部楼层
QUOTE:
Posted by yc_qiang on 2012-3-23 12:33
这点小事,就不麻烦楼主这样的大神了,我来解答吧
安装jre,点此下载
将testsign.jar和需要签名的升级包放在同一个目录,打开命令行,粘帖命令java -classpath testsign.jar testsign name.zip name_sign.zip ...

安装Jre,就是下载这个java页面的jre-6u31-windows-x64.exe文件进行安装吗?(我的是64bit win7 U版)
Work:X1 Carbon(i7+4G+256G)
Office : Surface Pro3
BT&HTPC:BenQ S73E
回复 支持 反对

使用道具 举报

4110

回帖

60

积分

1万

资产值

钻石会员 Rank: 3Rank: 3Rank: 3

注册时间
2005-8-20
银牌荣誉勋章(注册10年以上会员)
发表于 2012-3-23 13:16:06| 字数 173| - 中国–四川–凉山彝族自治州 电信 | 显示全部楼层
QUOTE:
Posted by 名剑.Roger on 2012-3-23 13:05
java.util.zip.ZipException: error in opening zip file ...


zip被其它程序占用?zip里有几个文件是签名时要修改的,需要提前删除,删除了没有?

删除\META-INF\目录下的CERT.rsa  CERT.sf   MANIFEST.MF
不畏浮云遮望眼,只缘身在最高层
X61 P9700 SXGA+ AFFS
X61T L7500OC SXGA+ AFFS
T61 P9700 UXGA AFFS
P52 E2176M P2000 4K
回复 支持 反对

使用道具 举报

4110

回帖

60

积分

1万

资产值

钻石会员 Rank: 3Rank: 3Rank: 3

注册时间
2005-8-20
银牌荣誉勋章(注册10年以上会员)
发表于 2012-3-23 13:18:44| 字数 68| - 中国–四川–凉山彝族自治州 电信 | 显示全部楼层

回复 #14 名剑.Roger 的帖子

看你的出错提示,似乎你已经有jre了

zip修改后我也是用winrar重新打包的,只是打包时选择格式为zip,而不是从.rar改成.zip
不畏浮云遮望眼,只缘身在最高层
X61 P9700 SXGA+ AFFS
X61T L7500OC SXGA+ AFFS
T61 P9700 UXGA AFFS
P52 E2176M P2000 4K
回复 支持 反对

使用道具 举报

4670

回帖

3

积分

1万

资产值

初级会员 Rank: 1

注册时间
2009-10-22
发表于 2012-3-23 13:25:43| 字数 39| - 中国–广东–深圳 电信 | 显示全部楼层
偶已经可以改签名了
但是update还是失败,继续找原因,很可能是脚本修改的问题
Work:X1 Carbon(i7+4G+256G)
Office : Surface Pro3
BT&HTPC:BenQ S73E
回复 支持 反对

使用道具 举报

4670

回帖

3

积分

1万

资产值

初级会员 Rank: 1

注册时间
2009-10-22
发表于 2012-3-23 14:01:57| 字数 112| - 中国–广东–深圳 电信 | 显示全部楼层
郁闷,逐步排除之后,进入CWM升级
居然还是报错:assert failed:apply_path_check_when_exist("/system/app/PinyinIME.apk",)
继续找原因试试!
Work:X1 Carbon(i7+4G+256G)
Office : Surface Pro3
BT&HTPC:BenQ S73E
回复 支持 反对

使用道具 举报

4670

回帖

3

积分

1万

资产值

初级会员 Rank: 1

注册时间
2009-10-22
发表于 2012-3-23 14:24:28| 字数 197| - 中国–广东–深圳 电信 | 显示全部楼层
QUOTE:
Posted by 名剑.Roger on 2012-3-23 14:01
郁闷,逐步排除之后,进入CWM升级
居然还是报错:assert failed:apply_path_check_when_exist("/system/app/PinyinIME.apk",)
继续找原因试试!

偶再次直接把脚本文件关于PinyinIME这二行删掉了,顺利刷进去了
现在再来刷0089US试试
Work:X1 Carbon(i7+4G+256G)
Office : Surface Pro3
BT&HTPC:BenQ S73E
回复 支持 反对

使用道具 举报

4670

回帖

3

积分

1万

资产值

初级会员 Rank: 1

注册时间
2009-10-22
发表于 2012-3-23 14:26:39| 字数 121| - 中国–广东–深圳 电信 | 显示全部楼层
QUOTE:
Posted by 名剑.Roger on 2012-3-23 14:24

偶再次直接把脚本文件关于PinyinIME这二行删掉了,顺利刷进去了
现在再来刷0089US试试

发现木有0089US啊,你们升级0089在哪升级的?用ROW那个ROM?
Work:X1 Carbon(i7+4G+256G)
Office : Surface Pro3
BT&HTPC:BenQ S73E
回复 支持 反对

使用道具 举报

4670

回帖

3

积分

1万

资产值

初级会员 Rank: 1

注册时间
2009-10-22
发表于 2012-3-23 14:33:40| 字数 68| - 中国–广东–深圳 电信 | 显示全部楼层
感谢YC兄,F版的不厌其烦的帮助,在下终于利用CWM跳过文件校验的部分,直接升级到0086,并用RootKeeper完美保留了ROOT!
Work:X1 Carbon(i7+4G+256G)
Office : Surface Pro3
BT&HTPC:BenQ S73E
回复 支持 反对

使用道具 举报

18

回帖

3

积分

744

资产值

中级会员 Rank: 2Rank: 2

注册时间
2011-5-24
 楼主| 发表于 2012-3-23 17:20:54| 字数 29| - 中国–广东–深圳 电信 | 显示全部楼层
多谢版主,多谢yc_qiang,在下也是刚入门,互相学习。
回复 支持 反对

使用道具 举报

4670

回帖

3

积分

1万

资产值

初级会员 Rank: 1

注册时间
2009-10-22
发表于 2012-3-23 17:23:16| 字数 123| - 中国–广东–深圳 电信 | 显示全部楼层
QUOTE:
Posted by ttrrii on 2012-3-23 17:20
多谢版主,多谢yc_qiang,在下也是刚入门,互相学习。

兄帮我看看这个帖子:http://www.ibmnb.com/thread-1196299-1-1.html
谢谢!!
Work:X1 Carbon(i7+4G+256G)
Office : Surface Pro3
BT&HTPC:BenQ S73E
回复 支持 反对

使用道具 举报

494

回帖

6

积分

870

资产值

高级会员 Rank: 2Rank: 2

注册时间
2011-10-5
发表于 2012-3-24 00:15:40| 字数 156| - 中国–广东–深圳 电信 | 显示全部楼层
名剑0089us版本,美国还没有正式放出,由于某些原因延时了!但是这里有美国联想论坛管理员放出的内部版本,说是0086版本有严重的邮件app崩溃卡死等问题应急用的!你可以先升这个,貌似邮件对你很重要的说!
https://dl.dropbox.com/u/6227627 ... 02_0039_0089_US.zip
What even you did , still cool !
回复 支持 反对

使用道具 举报

4670

回帖

3

积分

1万

资产值

初级会员 Rank: 1

注册时间
2009-10-22
发表于 2012-3-24 00:27:14| 字数 151| - 中国–广东–深圳 电信 | 显示全部楼层
QUOTE:
Posted by feskey on 2012-3-24 00:15
名剑0089us版本,美国还没有正式放出,由于某些原因延时了!但是这里有美国联想论坛管理员放出的内部版本,说是0086版本有严重的邮件app崩溃卡死等问题应急用的!你可以先升这个,貌似邮件对你很重要的说!
ht ...

谢谢版版,升之!
Work:X1 Carbon(i7+4G+256G)
Office : Surface Pro3
BT&HTPC:BenQ S73E
回复 支持 反对

使用道具 举报

74

回帖

2

积分

154

资产值

中级会员 Rank: 2Rank: 2

注册时间
2006-10-17
发表于 2012-7-6 09:48:21| 字数 4| - 中国–湖北–孝感 电信 | 显示全部楼层
mark
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Powered by Discuz! X3.5 © 2001-2023 Comsenz Inc

GMT+8, 2025-2-1 00:48 , Processed in 0.150650 second(s), 57 queries , Gzip On, OPcache On.

手机版|小黑屋|安卓客户端|iOS客户端|Archiver|备用网址1|备用网址2|在线留言|专门网

返回顶部