ZNDS智能电视网 推荐当贝市场

TV应用下载 / 资源分享区

软件下载 | 游戏 | 讨论 | 电视计算器

综合交流 / 评测 / 活动区

交流区 | 测硬件 | 网站活动 | Z币中心

新手入门 / 进阶 / 社区互助

新手 | 你问我答 | 免费刷机救砖 | ROM固件

查看: 795563|回复: 90
上一主题 下一主题
[交流讨论]

中兴b860av1.1-t手动获取root权限

  [复制链接]
跳转到指定楼层
楼主
发表于 2018-2-10 13:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式 | 来自湖南
本帖最后由 M_H_TV 于 2018-2-10 13:46 编辑

【写在前面的话】
    1、此方法必须拆机,且是针对ttl无法输入的情况,需要自备usb转串口。

    2、希望保存原有系统并作备份,最后IPTV和互联网点播均可用。
    3、需要对linux有一点了解,至少要熟悉一点uboot操作。
    4、鉴于1.1-t的情况,本文不会给出详细操作步骤,仅提供思路以便大家研究。
    5、忘了拍具体的图,目前的等级也不让我发图和链接,所以欠妥之处请包容。

  【原理】
         av1.1-t应该是采用的S905L芯片,根据wikipedia的说明,S905有多个变体,包括L系列,大体上都差不多。
    因此参考一下网上S905的datasheet,可以从sdcard,emmc,spi,nand和usb启动,av1.1-t是从emmc启动的。
       大概的启动过程:上电,选择从哪里启动,载入uboot,然后uboot里面可以做更多选择,包括usb burn,也就是线刷、正常启动boot分区的android内核和进入 recovery模式等。
       众所周知,最新的av1.1-t的串口只能输出,输入从uboot开始就被封了,因此一般情况拆了机也没有办法。我们需要换掉uboot,让它从外部的存储器启动,  这是关键。但若原系统未损坏时,emmc启动的优先级最高,并不能如愿所偿。相反,当机器成了砖头,就有可能直接从非系统emmc启动。对于正常的机器,我们需要做的是人为的将emmc屏蔽,是暂时的。此处要感谢前人的探索:   
      B860AV1.1-T ,AV2.1短接刷机点 ,论坛里直接搜

这种情况下串口输出是这样子的:
GXL:BL1:9ac50e:a1974b;FEAT:ADFD318C;POC:3;RCY:0;EMMC:0;READ:0;0.0;CHK:0;
TE: 109865

      OK,既然要从外部启动,我们需要准备其他uboot+recovery,制作启动sd卡,当然串口输入不能无效。进入recovery后就可以挂载system分区,data分区,就可以为所欲为了。


【需要下载的东西】

    1、uboot和meson1.dtb,这个是比较底层的东西,虽然前文说过S905和L差别不大,但最好还是找一个S905L的镜像提取,我这里用的是论坛里:晶晨s905L系列安卓6.0.1通刷固件20171210更新 ,提取的uboot经测试可用。
       如何提取,如何制作可以启动的sdcard,可以网上找一找。就是下载这些工具,Amlogic Customization Tool,USB_Burning_Tool,Burn_Card_Maker等。
    2、recovery,我测试用的TWRP,虽然没有S905L专版的,但是S905X也是可行的,谷歌搜索就有。
    3、SuperSu zip安装包
    4、终端模拟器TerminalEmulator,当贝桌面,当贝市场等。

【实际操作】

     1、准备好sdcard,短接会自动从sdcard启动uboot。另准备一个U盘或者直接将TWRP放在sdcard里面,分区类型为fat32。TWRP.img最好不要重命名为recovery.img,因为uboot env会自动load recovery.img,有点不好控制。
     2、等到uboot出现命令提示符,大概是这样:gxlXXX#,就可以手动启动U盘或者sdcard里的TRWP.img,输入print $recovery_from_udisk或者print  $recovery_from_sdcard查看怎么load TWRP.img。
       这里有比较重要的一点,因为是从外部sdcard启动,当前uboot也就认它,需要把emmc设置为当前设备,mmc dev device_Number,否则进入TWRP recovery后找不到emmc的分区。
     3、启动TWRP后,准备一个usb鼠标,就可以随心所欲的操作了,备份、root什么都行,挂载了system、data分区想安装什么apk都可以。


评分

参与人数 1威望 +6 金币 +10 Z币 +3 收起 理由
hao501802766 + 6 + 10 + 3 ZNDS有你更精彩:)

查看全部评分


上一篇:中兴B860AV1.1线刷固件短接哪里
下一篇:上海电信 中兴 B860 V2.1 软件版本2.2 刷机并保留iptv 自由切换
沙发
 楼主| 发表于 2018-2-10 13:39 | 只看该作者 | 来自湖南
本帖最后由 M_H_TV 于 2018-2-10 13:42 编辑

以附件形式传了链接。

WP_20180207_09_23_35_Pro[1].jpg (817.57 KB, 下载次数: 69)

WP_20180207_09_23_35_Pro[1].jpg

WP_20180207_09_16_48_Pro[1].jpg (954.6 KB, 下载次数: 47)

WP_20180207_09_16_48_Pro[1].jpg

WP_20180203_18_15_05_Pro[1].jpg (801.14 KB, 下载次数: 45)

WP_20180203_18_15_05_Pro[1].jpg

中兴b860av1.1-t手动获取root权限含相关链接.txt

3.43 KB, 下载次数: 762, 下载积分: 金币 -1

里面有下载文件的链接

回复 支持 反对

使用道具 举报

板凳
发表于 2018-2-13 16:50 | 只看该作者 | 来自江苏
厉害,我这种小白有点头晕啊
回复 支持 反对

使用道具 举报

地板
发表于 2018-2-13 22:14 | 只看该作者 | 来自江苏
M_H_TV 发表于 2018-2-10 13:39
以附件形式传了链接。

先把机器刷成砖,再把砖头刷成机器,我都佩服自己在ZNDS学到的刷机技术!
回复 支持 反对

使用道具 举报

5#
发表于 2018-3-5 23:28 | 只看该作者 | 未知
学习学习!
回复 支持 反对

使用道具 举报

6#
发表于 2018-3-13 12:35 | 只看该作者 | 来自广东
楼主求救:我已走到这步gxl_p211_v1#,手动启动TWRP.img我学习了三天还是找不到load TWRP.img方法,求指点,十分感谢!
回复 支持 反对

使用道具 举报

7#
发表于 2018-3-13 13:19 | 只看该作者 | 来自广东
继续相求:用SD卡启动uboot后怎样使用命令手动启动SD卡里的镜像如TWRP.img
回复 支持 反对

使用道具 举报

8#
发表于 2018-3-13 13:37 | 只看该作者 | 来自广东
一看就是高深的技术了  顶
回复 支持 反对

使用道具 举报

9#
发表于 2018-3-14 16:12 | 只看该作者 | 来自江苏
M_H_TV 发表于 2018-2-10 13:39
以附件形式传了链接。

楼主,你好。按照教程,前面都顺利完成了。现在卡在从uboot启动twrp这一步,麻烦能否详细介绍下用什么命令。多谢!
回复 支持 反对

使用道具 举报

10#
发表于 2018-3-14 20:22 | 只看该作者 | 来自江苏
楼主用心了,内容非常精彩。
回复 支持 反对

使用道具 举报

11#
发表于 2018-3-15 10:35 | 只看该作者 | 来自湖南
老铁666!必须支持一波!
回复 支持 反对

使用道具 举报

12#
 楼主| 发表于 2018-3-16 14:29 | 只看该作者 | 来自广东
本帖最后由 M_H_TV 于 2018-3-16 14:43 编辑

@ragelancer
@zw402
抱歉啊,这么久了,没怎么看帖子。

进入u-boot后首先要找到系统emmc,设置为当前设备,默认是外置sdcard。

在命令提示符下输入“mmc"命令,看提示操作,记不太清了。
要启动twrp,看看uboot的环境变量是怎么设置的,可以输入"print"查看环境变量,找到相关的启动命令,把里面的文件名改掉就行。
比方说把形如recovery.img之类的改成twrp.img ,xxx.dtb改成meson1.dtb,再把改好的命令输入,加上一个启动命令,大概是"bootm 0xxxxxxx - 0xxxxxxxx",这两个地址具体是多少不用管,它是用符号表示的。环境变量里都有的。



具体命令我真记不太清了,反正查看uboot环境变量、输入help都有的,没有刻意去记。

回复 支持 反对

使用道具 举报

13#
发表于 2018-3-17 11:12 | 只看该作者 | 来自江苏
1.1
回复 支持 反对

使用道具 举报

14#
发表于 2018-3-18 18:06 | 只看该作者 | 来自广东

sd卡启动:

BL2 Built : 01:56:32, Dec 22 2016.
gxl g1614c0b - xiaobo.gu@droid05

Board ID = 8, adc=617
set vcck to 1070 mv
set vddee to 1070 mv
CPU clk: 1200MHz
2layers board, use ddr_set[0]
DQS-corr enabled
DDR scramble enabled
DDR3 chl: Rank0+1 @ 792MHz - FAIL
DDR3 chl: Rank0 @ 792MHz - PASS
Rank0: 1024MB(auto)-2T-11
DataBus test pass!
AddrBus test pass!
Load fip header from SD, src: 0x0000c200, des: 0x01400000, size: 0x00004000
sd/emmc read data error: ret=16
aml log : SIG CHK : 260 for address 0x01700000
reset...
GXL:BL1:9ac50e:a1974b;FEAT:ADFD318C;POC:3;RCY:0;EMMC:0;READ:0;0.0;CHK:0;
TE: 141266

BL2 Built : 19:31:35, Jul 25 2017.
gxl g4bbe26f-dirty - liang.yang@droid11-sz

Board ID = 8, adc=617
set vcck to 1070 mv
set vddee to 1070 mv
CPU clk: 1200MHz
Can't match board id, use default ddr_set[0]
DDR type: DDR3-ID
DQS-corr enabled
DDR scramble enabled
Pull down ddr cke
DDR3 chl: Rank0+1 @ 792MHz - FAIL
DDR3 chl: Rank0 @ 792MHz - PASS
Rank0: 1024MB(auto)-2T-11
DataBus test pass!
AddrBus test pass!
-s
Load fip header from eMMC, src: 0x0000c200, des: 0x01400000, size: 0x00004000
New fip structure!
Load bl30 from eMMC, src: 0x00010200, des: 0x01100000, size: 0x00007400
Load bl301 from eMMC, src: 0x00018200, des: 0x01200000, size: 0x00002200
Load bl31 from eMMC, src: 0x0001c200, des: 0x10100000, size: 0x00019400
Load bl33 from eMMC, src: 0x00038200, des: 0x01000000, size: 0x000de200
NOTICE:  BL3-1: v1.0(debug):27d2eea5
NOTICE:  BL3-1: Built : 14:56:35, Mar 24 2017
aml log : bl31 normal boot !
[Image: gxl_v1.1.3090-c2794da-dirty 2017-06-23 15:25:47 yun.cai@droid03]
bl30: check_permit, count is 1
bl30: check_permit: ok!
chipid: ef be ad de d f0 ad ba ef be ad de not ES chip
efuse init ops = e2
efuse init hdcp = c, cf9=7
[0.652492 Inits done]
secINFO:    BL3-1: Initializing runtime services
WARNING: No OPTEE provided by BL2 boot loader
ERROR:   Error initializing runtime service opteed_fast
INFO:    BL3-1: Preparing for EL3 exit to normal world
INFO:    BL3-1: Next image address = 0x1000000
INFO:    BL3-1: Next image spsr = 0x3c9
re
at
1sUk- Bsotoatr t2!0
5.hig0h1 -tga7s4k4 1sbtda1r-td!i
7lotwy  t(aSsekp  s0t9a r2t0!1
  - 17:53:13)

DRAM:  1 GiB
gpio: pin GPIOCLK_1 (gpio 99) value is 1
gpio: pin GPIOAO_6 (gpio 106) value is 1
MMC init failed
Using default environment

reboot_mode=normal
store init flag
store read name addr off|partition size
    read 'size' bytes starting at offset 'off'
    to/from memory address 'addr', skipping bad blocks.
store write name addr off|partition size
    write 'size' bytes starting at offset 'off'
    to/from memory address 'addr', skipping bad blocks.
store rom_write add off size.
        write uboot to the boot device
store erase boot/data:
        erase the area which is uboot or data
store erase dtb
store erase key
store rom_protect on/off
store scrub off|partition size
        scrub the area from offset and size
store dtb iread/read/write addr <size>
        read/write dtb, size is optional
store key read/write addr <size>
        read/write key, size is optional




store init flag
store read name addr off|partition size
    read 'size' bytes starting at offset 'off'
    to/from memory address 'addr', skipping bad blocks.
store write name addr off|partition size
    write 'size' bytes starting at offset 'off'
    to/from memory address 'addr', skipping bad blocks.
store rom_write add off size.
        write uboot to the boot device
store erase boot/data:
        erase the area which is uboot or data
store erase dtb
store erase key
store rom_protect on/off
store scrub off|partition size
        scrub the area from offset and size
store dtb iread/read/write addr <size>
        read/write dtb, size is optional
store key read/write addr <size>
        read/write key, size is optional

set osd_size 1080p
bootmode:NORM
boot system norm failed, try boot safe!
gxl_p211_v1#
回复 支持 反对

使用道具 举报

15#
发表于 2018-3-18 18:15 | 只看该作者 | 来自广东
环境变量
gxl_p211_v1#print
1080i_h=1050
1080i_w=1874
1080i_x=23
1080i_y=15
1080p_h=1080
1080p_w=1920
1080p_x=0
1080p_y=0
480i_h=456
480i_w=682
480i_x=21
480i_y=12
480p_h=455
480p_w=665
480p_x=27
480p_y=10
576i_h=557
576i_w=699
576i_x=12
576i_y=10
576p_h=576
576p_w=704
576p_x=0
576p_y=0
720p_h=704
720p_w=1245
720p_x=17
720p_y=8
720poutputheight=1000
720poutputwidth=1000
720poutputx=0
720poutputy=0
COMControlFlag=0
aml_dt=gxl_p211_1g
baudrate=115200
boardid=8
boardtype=8
boot_revision=V810574
bootargs=rootfstype=ramfs init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xc81004c0 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 use_cma_first=1 androidboot.selinux=disabled logo=osd1,loaded,0x3d800000,1080p60hz vout=1080p60hz,enable hdmimode=1080p60hz cvbsmode=576cvbs hdmitx= cvbsdrv=1 androidboot.firstboot=1 jtag=apee quiet androidboot.hardware=amlogic androidboot.boardid=8 osd_size=1080p
bootcmd=jpeg ${outputmode};bootsys
bootdelay=1
bootflag=2
cmdline_keys=if keyman init 0x1234; then if keyman read usid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.serialno=${usid};fi;if keyman read mac ${loadaddr} str; then setenv bootargs ${bootargs} mac=${mac} androidboot.mac=${mac};fi;if keyman read deviceid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.deviceid=${deviceid};fi;fi;
console=ttyS0,115200n8 nohlt
cvbs_drv=1
cvbsmode=576cvbs
dbglevel=quiet
defaulttvfrequency=60Hz
digitaudiooutput=PCM
display_bpp=24
display_color_bg=0
display_color_fg=0xffff
display_color_index=24
display_height=1080
display_layer=osd1
display_width=1920
dtb_mem_addr=0x1000000
ethact=dwmac.c9410000
ethaddr=00:15:18:01:81:31
factory_reset_poweroff_protect=echo wipe_data=${wipe_data}; echo wipe_cache=${wipe_cache};if test ${wipe_data} = failed; then run init_display; run storeargs;if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;fi; if test ${wipe_cache} = failed; then run init_display; run storeargs;if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;fi;
fb_addr=0x3d800000
fb_height=1080
fb_width=1920
fdt_high=0x20000000
firstboot=1
force_auto_update=false
gatewayip=172.18.1.1
hdcp_process=0
hdmimode=1080p60hz
hostname=arm_gxbb
init_display=osd open;osd clear;bmp scale
initargs=rootfstype=ramfs init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xc81004c0 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 use_cma_first=1 androidboot.selinux=disabled
ipaddr=172.18.35.6
ir_recovery=0
irremote_update=if irkey 0x7b84c43b 0xb748ff00 0x6699dd22 0x66994eb1 0x66994db2 0x66994cb3 200000; then echo read irkey ok!; if itest ${irkey_value} == 0x7b84c43b; then echo irkey_value == 0x7b84c43b;else if itest ${irkey_value} == 0xb748ff00; then echo irkey_value == 0xb748ff00;else if itest ${irkey_value} == 0x6699dd22; then echo irkey_value == 0x6699dd22;else if itest ${irkey_value} == 0x66994eb1; then echo irkey_value == 0x66994eb1;else if itest ${irkey_value} == 0x66994db2; then echo irkey_value == 0x66994db2;else if itest ${irkey_value} == 0x66994cb3; then echo irkey_value == 0x66994cb3;fi;fi;fi;fi;fi;fi;fi;
jtag=apee
loadaddr=1080000
logotime=0
mem=0M
netmask=255.255.0.0
outputmode=1080p60hz
preboot=run init_display;run storeargs;run irremote_update;run switch_bootmode;
reboot_mode=normal
recovery_from_flash=getCom; setenv bootargs ${bootargs} aml_dt=${aml_dt} recovery_part={recovery_part} recovery_offset={recovery_offset} system=safe COMControlFlag=${COMControlFlag};if imgread kernel ${recovery_part} ${loadaddr} ${recovery_offset}; then wipeisb; bootm ${loadaddr}; fi
recovery_from_sdcard=if fatload mmc 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload mmc 0 ${loadaddr} recovery.img; then if fatload mmc 0 ${dtb_mem_addr} dtb.img; then echo sd dtb.img loaded; fi;wipeisb; bootm ${loadaddr};fi;
recovery_from_udisk=if fatload usb 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload usb 0 ${loadaddr} recovery.img; then if fatload usb 0 ${dtb_mem_addr} dtb.img; then echo udisk dtb.img loaded; fi;wipeisb; bootm ${loadaddr};fi;
recovery_offset=0
recovery_part=recovery
runlevel=0
sdc_burning=sdc_burn ${sdcburncfg}
sdcburncfg=aml_sdc_burn.ini
serverip=172.18.35.20
stderr=serial
stdin=serial
stdout=serial
storeargs=setenv bootargs ${initargs} logo=${display_layer},loaded,${fb_addr},${outputmode} vout=${outputmode},enable hdmimode=${hdmimode} cvbsmode=${cvbsmode} hdmitx=${cecconfig} cvbsdrv=${cvbs_drv} androidboot.firstboot=${firstboot} jtag=${jtag} quiet; setenv bootargs ${bootargs} androidboot.hardware=amlogic androidboot.boardid=${boardid};run cmdline_keys;
storeboot=if imgread kernel boot ${loadaddr}; then bootm ${loadaddr}; fi;run update;
switch_bootmode=get_rebootmode;if test ${reboot_mode} = factory_reset; then run recovery_from_flash;else if test ${reboot_mode} = update; then run update;else if test ${reboot_mode} = cold_boot; then run try_auto_burn; fi;fi;fi;
system=norm
try_auto_burn=update 700 750;
uimode=1080p
update=run usb_burning; run sdc_burning; if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;
upgrade_check=echo upgrade_step=${upgrade_step}; if itest ${upgrade_step} == 3; then run init_display; run storeargs; run update;else if itest ${upgrade_step} == 1; then defenv_reserv; setenv upgrade_step 2; saveenv;fi;fi;
upgrade_step=2
usb_burning=update 1000
wipe_cache=successful
wipe_data=successful
zte_dispmode=720p
gxl_p211_v1#
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

站长推荐 上一条 /2 下一条

Archiver|新帖|标签|软件|Sitemap|ZNDS智能电视网 ( 苏ICP备2023012627号 )

网络信息服务信用承诺书 | 增值电信业务经营许可证:苏B2-20221768 丨 苏公网安备 32011402011373号

GMT+8, 2026-10-8 19:58 , Processed in 0.077410 second(s), 13 queries , Redis On.

Powered by Discuz!

监督举报:report#znds.com (请将#替换为@)

© 2007-2026 ZNDS.Com

快速回复 返回顶部 返回列表