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

TV应用下载 / 资源分享区

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

综合交流 / 评测 / 活动区

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

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

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

楼主: zzj80
上一主题 下一主题
[求助]

正常 天猫魔盒1s+(M10)TTL读取数据 求大神root方法

  [复制链接]
31#
 楼主| 发表于 2015-5-22 18:51 | 只看该作者 | 来自四川
求助:为什么我挂载读写 mount -o remount,rw /dev/block/system /system 总提示 mount: Invalid argument
回复 支持 反对

使用道具 举报

32#
发表于 2015-5-26 14:27 | 只看该作者 | 来自吉林
用读写机弄,可能行。N年前我电脑bios刷坏,就是花30元用机器把官方bios文件写回的。
回复 支持 反对

使用道具 举报

33#
 楼主| 发表于 2015-5-26 18:37 | 只看该作者 | 来自四川
wubidao 发表于 2015-5-26 14:27
用读写机弄,可能行。N年前我电脑bios刷坏,就是花30元用机器把官方bios文件写回的。 ...

m10不像旧版的魔盒,在m10上没找到spi   flash芯片。
回复 支持 反对

使用道具 举报

34#
 楼主| 发表于 2015-5-26 18:45 | 只看该作者 | 来自四川
wustone 发表于 2015-5-26 13:06
楼主为何不先刷Foxrom,其有Root权限,再在Foxrom下刷第三方recovery?最后在第三方recovery下刷自己喜欢的 ...

要刷机得进入第三方recovery,m10没有8脚 flash芯片,短接哪里能进入第三方recovery?!!
回复 支持 反对

使用道具 举报

35#
 楼主| 发表于 2015-5-26 18:48 | 只看该作者 | 来自四川
shanxizt 发表于 2015-5-22 10:26
M10,用刷机精灵进了 recovery,后来没下文了

用论坛上多功能的一键root工具选择最后一个就能进入recovery,不过进入的是官方的recovery
回复 支持 反对

使用道具 举报

36#
 楼主| 发表于 2015-5-26 18:49 | 只看该作者 | 来自四川
shanxizt 发表于 2015-5-22 10:26
M10,用刷机精灵进了 recovery,后来没下文了

官方的recovery是红色背景的
回复 支持 反对

使用道具 举报

37#
发表于 2015-5-26 22:26 来自ZNDS手机版 | 只看该作者 | 来自北京
加油了,各位大神们!
回复 支持 1 反对 0

使用道具 举报

38#
发表于 2015-5-27 00:43 | 只看该作者 | 来自浙江
zzj80 发表于 2015-5-26 18:49
官方的recovery是红色背景的

小心,别成砖了,那样就没的玩了,我还期待你呢
回复 支持 反对

使用道具 举报

39#
发表于 2015-5-27 15:21 | 只看该作者 | 未知
https://www.znds.com/tv-95623-1-1.html

看看谁能弄到 固件包然后修改后刷进去。这个好像是软破解的唯一方法。
回复 支持 反对

使用道具 举报

40#
发表于 2015-5-27 21:18 | 只看该作者 | 未知
重点就是要让系统开启主控台,这样我们的TTL终端窗口就可以进入shell,怎么开启呢?你猜对了,就是修改固件,确切的说就是修改Boot.img。也许你要问,这个文件是干啥用的呢?这个文件包含了 ramdisk 和 系统的linux kernel,当然kernel我们就不用去改了,我们要改的是ramdisk。晕,怎么写来写去不怎么“粗略”了undefined,既然这样,我就不直接给成品了。ok,说说怎么改。这个文件在官网的升级包里面,我的固件是最新的1.0.2,所以先下载这个固件包
https://www.znds.com/tv-90639-1-1.html
然后,我们要用到一个boot.img的打包解包神器,哪里去找,怎么用呢?当然,万能的百度会告诉你,关键词“bootimg.exe”。

好了,完事具备。
建个目录,把bootimg.exe拷贝进去。
首先解包固件update_qualcore_Q5.zip,把boot.img拷贝到刚才的目录。

E:\fw>dir
2014/08/23  14:21    <DIR>          .
2014/08/23  14:21    <DIR>          ..
2014/06/15  15:16         8,175,616 boot.img
2014/08/20  18:06         2,405,677 bootimg.exe




然后
E:\fw>bootimg.exe --unpack-bootimg boot.img
arguments: [bootimg file]
bootimg file: boot.img
output: kernel[.gz] ramdisk[.gz] second[.gz]
base=0x3000000
page_size=16384
name=""
cmdline=""
padding_size=16384


解包出来的base, cmdline, page_size, padding_size几个值比较重要,需要记住,等下重新打包的时候要用到。
接下来解包ramdisk

E:\fw>bootimg.exe --unpack-ramdisk
arguments: [ramdisk file] [directory]
ramdisk file: ramdisk.gz
directory: initrd
output: cpiolist.txt


看到目录下多出来一个initrd目录了吧?目录下有个文件叫default.prop,好了,就是他了。用写字板之类的打开,找到ro.debuggable=0这样的,这就是开启Console服务的选项。把0修改成1,然后保存。
下面重新打包ramdisk

E:\fw>bootimg.exe --repack-ramdisk
arguments: [cpiolist file]
cpiolist file: cpiolist.txt
output: ramdisk.cpio.gz


重新打包boot.img (看下面命令行,后面的参数就是刚才提到要记住的字段。这里有点问题,cmdline为空好像不行,所以乱写个)


E:\fw>bootimg.exe --repack-bootimg 0x3000000 "\0" 16384 16384
arguments: [base] [cmdline] [page_size] [padding_size]
kernel: kernel
ramdisk: ramdisk.cpio.gz
second:
base: 0x3000000
cmdline: \0
page_size: 16384
padding_size: 16384
output: boot.img


大功搞成,新的boot.img取代了旧的。


E:\fw>dir
2014/08/23  14:30    <DIR>          .
2014/08/23  14:30    <DIR>          ..
2014/08/23  14:32         8,175,616 boot.img
2014/08/20  18:06         2,405,677 bootimg.exe
2014/08/23  14:26               892 cpiolist.txt
2014/08/23  14:26    <DIR>          initrd
2014/08/23  14:23         7,826,184 kernel
2014/08/23  14:30           321,942 ramdisk.cpio.gz
2014/08/23  14:23           322,481 ramdisk.gz



好了,回到最开始,连接TTL,打开putty终端,开机,Ctrl-C,进入fastboot界面

待续。。。。

继续
先看看环境变量

fastboot# pr
bootdelay=1
baudrate=115200
ipaddr=192.168.1.10
serverip=192.168.1.1
netmask=255.255.255.0
bootfile="uImage"
phy_intf=mii,rgmii
use_mdio=0,1
phy_addr=2,1
gmac_debug=0
bootcmd=mmc read 0 0x1FFFFC0 0x4B000 0x5000; bootm 0x1FFFFC0
bootargs=mmz=ddr,0,0,700M mem=2G console=ttyAMA0,115200 blkdevparts=mmcblk0:1M(f                                                                                                                                                             astboot)ro,1M(bootargs)ro,10M(recovery)ro,2M(deviceinfo),8M(baseparam),8M(pqpara                                                                                                                                                             m),20M(logo),20M(logobak),40M(fastplay),40M(fastplaybak),40M(kernel)ro,20M(misc)                                                                                                                                                             ,8M(userapi),8M(qbdrvr),8M(qbflag),300M(qbdata),768M(system),2048M(userdata),100                                                                                                                                                             M(cache),20M(private)ro,-(sdcard)
recoverybootargs=mmz=ddr,0,0,700M mem=2G console=ttyAMA0,115200 blkdevparts=mmcb                                                                                                                                                             lk0:1M(fastboot),1M(bootargs),10M(recovery),2M(deviceinfo),8M(baseparam),8M(pqpa                                                                                                                                                             ram),20M(logo),20M(logobak),40M(fastplay),40M(fastplaybak),40M(kernel),20M(misc)                                                                                                                                                             ,8M(userapi),8M(qbdrvr),8M(qbflag),300M(qbdata),768M(system),2048M(userdata),100                                                                                                                                                             M(cache),20M(private),-(sdcard)
stdin=serial
stdout=serial
stderr=serial
ethaddr=00:66:cf:00:07:07
ver=Fastboot 3.3.0-svn8063 (wukl@ubuntu) (Jul 11 2014 - 17:58:14)
Environment size: 1067/65532 bytes
fastboot#



重点说下ipaddr, serverip, bootcmd这3个变量因为这个时候,最方便把boot.img传到机器里面的方法就是通过tftp。所以,我们要先设置下网络环境

ipaddr=192.168.1.10


这个是设置Q5盒子本身的ip地址

serverip=192.168.1.1


这个就是tftp服务器的ip地址,所以你需要设置为你的实际的地址,在这里我的机器是192.168.2.163,所以Q5盒子就相应设置到同一个网段,我用的192.168.2.11,于是,执行如下命令修改这两个环境变量
fastboot# set ipaddr 192.168.2.11
fastboot# set serverip 192.168.2.163
fastboot#




再说下环境变量bootcmd
bootcmd=mmc read 0 0x1FFFFC0 0x4B000 0x5000; bootm 0x1FFFFC0


这下知道盒子怎么启动了吧?就是先从mmc第0x4B000处把内核读到内存的0x1FFFFC0地址,然后运行bootm从0x1FFFFC0开始运行,启动内核。

我们这里是要启动我们修改好的boot.img,没刷到mmc里面,怎么办呢?那就是要用到的tftp命令。要用tftp,你首先还得在你的电脑上有个tftp服务器才行,我用的是广泛使用的tftpd32.exe,哪里去找呢?还是万能的百度,关键词“tftpd32.exe”,网上大把,自己下载装好,把tftpd32.exe 放到刚才的目录。
E:\fw>dir
2014/08/23  16:40    <DIR>          .
2014/08/23  16:40    <DIR>          ..
2014/08/23  14:32         8,175,616 boot.img
2014/08/20  18:06         2,405,677 bootimg.exe
2014/08/23  14:26               892 cpiolist.txt
2014/08/23  14:26    <DIR>          initrd
2014/08/23  14:23         7,826,184 kernel
2014/08/23  14:30           321,942 ramdisk.cpio.gz
2014/08/23  14:23           322,481 ramdisk.gz
2011/05/08  00:05           205,312 tftpd32.exe



运行tftpd32.exe



这下可以从tftp获取boot.img了
fastboot# tftp 0x1FFFFC0 boot.img
ETH0: PHY(phyaddr=1, rgmii) link UP: DUPLEX=FULL : SPEED=1000M
MAC:   00-66-CF-00-07-07
TFTP from server 192.168.2.163; our IP address is 192.168.2.11
Download Filename 'boot.img'.
Download to address: 0x1ffffc0
Downloading: #  [ Connected ]
################################        [ 2.888 MB]
################################        [ 5.752 MB]
#######################
done
Bytes transferred = 8175616 (7cc000 hex)




ok,现在我们终于把改好的内核放到了盒子内存的0x1FFFFC0地址开始处。下面就可以运行了
fastboot# bootm 0x1FFFFC0
Found Initrd at 0x04000000 (Size 321942 Bytes), align at 16384 Bytes
## Booting kernel from Legacy Image at 02003fc0 ...
   Image Name:   Linux-3.10.0_s40
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    7826120 Bytes = 7.5 MiB
   Load Address: 02000000
   Entry Point:  02000000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0x0
Linux version 3.10.0_s40 (wukl@ubuntu) (gcc version 4.4.1 (Hisilicon_v200(gcc4.4-290+glibc-2.11+eabi+nptl)) ) #2 SMP Fri Aug 1 20:09:00 CST 2014
CPU: ARMv7 Processor [414fc091] revision 1 (ARMv7), cr=10c53c7d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine: bigfish
Ignoring unrecognised tag 0x726d6d74
Invalid PDM tag, errno:0
DSP run memory space at 0x02000000, size: 0x00800000 Bytes.
cma: CMA: reserved 700 MiB at 43c00000
cma: CMA: reserved 4 MiB at 43800000




启动完毕,按下回车,看到了shell提示符,有没有?
130|root@Hi3798CV100:/ #


到这里,基本上就大功告成了,你已经获得了root权限,可以做事了。我这里并未把改好的boot.img 刷到mmc, 你要有兴趣,可以在刚才的fastboot界面,tftp上传完了boot.img后,用mmc write写进去,当然你如果搞错了,把机器写坏了可别怪我哈。
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

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

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

GMT+8, 2025-7-31 08:55 , Processed in 0.059593 second(s), 9 queries , Redis On.

Powered by Discuz!

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

© 2007-2025 ZNDS.Com

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