支持国产操作系统国产应用!

捉蛋网

当前位置: 捉蛋网>路由器>

小米路由器3(MI-3)刷华硕无需虚拟机方法(含刷回方法)

时间:2020-04-22 13:54来源:未知 作者:捉蛋网 点击:
闲来无事,看了看老毛子虚拟机刷机脚本 因为只有一点php经验,勉强能看下去吧 1.获取ssh 虚拟机采用的是漏洞法 如果你降级后没有配置路由器,虚拟机也人性化的提供了配置的功能,只不过你看不到 当然,这时候你就需要使用root密码来获取ssh 如果你开机配置了路由,就使
闲来无事,看了看老毛子虚拟机刷机脚本
因为只有一点php经验,勉强能看下去吧有兴趣欢迎留言或者私信沟通交流。路由器交流群QQ群 699032478

1.获取ssh
虚拟机采用的是漏洞法
如果你降级后没有配置路由器,虚拟机也人性化的提供了配置的功能,只不过你看不到
当然,这时候你就需要使用root密码来获取ssh
如果你开机配置了路由,就使用你设置的web管理密码来获取ssh


2.刷u-boot
nvram set boot_wait=on
nvram set uart_en=1
nvram commit
mtd write /tmp/uboot.bin Bootloader
3.刷固件
这一步就比较繁琐了
源代码文件:  start.zip链接:https://pan.baidu.com/s/1S5TuJAqyLLkrZkgBzQph1w 
提取码:qap9 
复制这段内容后打开百度网盘手机App,操作更方便哦
 
有兴趣的自己看一下
整理得到
  1. #ssh登录路由
  2. sshpass -p 密码 ssh -T -p 22 -o StrictHostKeyChecking=no root@192.168.31.1
  3. #检查分区,获取Kernel1数据
  4. cat /proc/mtd | grep -oEm1 '^mtd([0-9]+): ([[:xdigit:]]+) ([[:xdigit:]]+) "Kernel1"' | cut -d' ' -f2
  5. cat /proc/mtd | grep -oEm1 '^mtd([0-9]+): ([[:xdigit:]]+) ([[:xdigit:]]+) "Kernel1"' | cut -d' ' -f3
复制代码
得到:
size:00400000
erasesize:00020000
其实我们是可以直接看到的#cat /proc/mtd

退出ssh状态,在linux里执行运算
  1. echo $((16#00400000))
  2. 4194304
  3.  
复制代码

虚拟机脚本中含有nand坏块检测部分,检测到坏块就会减去这部分的值来切割,但有坏块的时候就会阻止刷入

用上面的出的值分割文件,并刷入
  1. dd if=mi3.trx bs=4194304 count=1 2> /dev/null | dd of=mi3.trx.part1 2> /dev/null
  2. mtd write mi3.trx.part1 kernel1
  3. dd if=mi3.trx bs=4194304 skip=1 2> /dev/null | dd of=mi3.trx.part2 2> /dev/null
  4. mtd write mi3.trx.part2 rootfs0
  5. nvram set flag_last_success=1
  6. nvram commit
复制代码



正式刷机:(刷机有风险,谨慎)

#降级
下载降级固件:miwifi_r3_all_55ac7_2.11.20.bin
进入路由器后台,常用设置,系统状态,手动升级,选择降级固件,勾选清除配置
如果文件校验失败,可能文件下载不完整,重新下载。也可能是因为你的路由不是小米路由器3

------------------------------
------------------------------
#获取ssh
1.官方方法获取
打开http://d.miwifi.com/rom/ssh
登陆后下载ssh工具,按说明使用U盘获取

2.漏洞法获取
登录后台,取得网址栏stok值替换到此处,然后在浏览器中访问,逐条进行
http://192.168.31.1/cgi-bin/luci/;stok=<你的stok值>/api/xqnetwork/set_wifi_ap?ssid=tianbao&encryption=NONE&enctype=NONE&channel=1%3Bnvram%20set%20ssh%5Fen%3D1%3B%20nvram%20commit
返回1616正常
http://192.168.31.1/cgi-bin/luci/;stok=<你的stok值>/api/xqnetwork/set_wifi_ap?ssid=tianbao&encryption=NONE&enctype=NONE&channel=1%3Bsed%20%2Di%20%22%3Ax%3AN%3As%2Fif%20%5C%5B%2E%2A%5C%3B%20then%5Cn%2E%2Areturn%200%5Cn%2E%2Afi%2F%23tb%2F%3Bb%20x%22%20%2Fetc%2Finit.d%2Fdropbear
返回1616正常
http://192.168.31.1/cgi-bin/luci/;stok=<你的stok值>/api/xqnetwork/set_wifi_ap?ssid=tianbao&encryption=NONE&enctype=NONE&channel=1%3B%2Fetc%2Finit.d%2Fdropbear%20start
返回1616正常

putty登录时,密码为web管理密码,或root密码
root密码在此处查看:http://d.miwifi.com/rom/ssh

如果都无法登录,请尝试更改密码
http://192.168.31.1/cgi-bin/luci/;stok=<你的stok值>/api/xqsystem/set_name_password?oldPwd=<你当前的后台管理密码>&newPwd=<新密码>


------------------------------
------------------------------
#获取putty和winscp(不会使用的话,我也没辙)
putty下载
http://downloads.openwrt.org.cn/software/putty.zip
winscp下载
http://downloads.openwrt.org.cn/software/WinSCP.rar

------------------------------
------------------------------
#备份固件
putty登录路由器
查看分区如下,命令:cat /proc/mtd
  1. root@XiaoQiang:~# cat /proc/mtd
  2. dev:    size   erasesize  name
  3. mtd0: 08000000 00020000 "ALL"
  4. mtd1: 00040000 00020000 "Bootloader"
  5. mtd2: 00040000 00020000 "Config"
  6. mtd3: 00040000 00020000 "Bdata"
  7. mtd4: 00040000 00020000 "Factory"
  8. mtd5: 00040000 00020000 "crash"
  9. mtd6: 00040000 00020000 "crash_syslog"
  10. mtd7: 00080000 00020000 "reserved0"
  11. mtd8: 00400000 00020000 "kernel0"
  12. mtd9: 00400000 00020000 "kernel1"
  13. mtd10: 02000000 00020000 "rootfs0"
  14. mtd11: 02000000 00020000 "rootfs1"
  15. mtd12: 03600000 00020000 "overlay"
复制代码

putty中逐条执行以下命令,备份至tmp目录,使用winscp下载备份,协议选scp
  1. dd if=/dev/mtd0 of=mtd0.bin
  2. dd if=/dev/mtd1 of=mtd1.bin
  3. dd if=/dev/mtd2 of=mtd2.bin
  4. dd if=/dev/mtd3 of=mtd3.bin
  5. dd if=/dev/mtd4 of=mtd4.bin
  6. dd if=/dev/mtd5 of=mtd5.bin
  7. dd if=/dev/mtd6 of=mtd6.bin
  8. dd if=/dev/mtd7 of=mtd7.bin
  9. dd if=/dev/mtd8 of=mtd8.bin
  10. dd if=/dev/mtd9 of=mtd9.bin
  11. dd if=/dev/mtd10 of=mtd10.bin
  12. dd if=/dev/mtd11 of=mtd11.bin
  13. dd if=/dev/mtd12 of=mtd12.bin
复制代码

        因存储不足导致的备份失败,可使用U盘备份
        插入U盘,输入df -h
        看到Size是自己的u盘大小那一行,再看Mounted on的对应路径
        比如:/extdisks/sda1
        那么修改路径备份即可
        进入U盘目录 (责任编辑:捉蛋网)
............................................................................................... ...............................................................................................

 

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------