|
本帖最后由 327383863 于 2024-1-7 17:11 编辑
起因:这段时间入手了 小米AX3000T, 准备刷openwrt前, 备份小米AX3000T,的过程。
现在分享我自己备份过程的操作步骤, 给后来人,提供思路。
小米的其他路由器,原理大差不差的,如果你是其他型号的路由器,就当是参考。
思路:
1 :登陆路由器的SSH管理后台(最高管理权限)
2 :输入代码查看,路由器,原分区对应的不同文件。
3:根据分区,编辑备份代码,输入备份代码,来压缩分区文件到tmp文件夹下。
4:将压缩好的原系统文件,下载到本地。(以备不时之需)
重要的事情说三遍
刷机前一定要备份!刷机前一定要备份!刷机前一定要备份!
建议刷机前,先固化下SSH,避免路由器重启后,stok变化,后又需要重新开启SSH权限。 固化教程参考 小米AX3000T官方固件固化ssh教程
SSH固化方法
开启SSH权限
登陆小米路由器首页 192.168.31.1 后,浏览器的地址栏中 刚刚输入的192.168.31.1 自动变为下面代码
- http://192.168.31.1/cgi-bin/luci/;stok=5feb6714de5507a92a9ef7f3fe86103b/web/home#router
复制代码 复制stok=后面的数值, 数值不包含/web/home#router
如果文字看的比较抽象, 那就看下面的图片,并根据自己路由器的首页的代码,复制相应的数值
复制stok=后面的数值 5feb6714de5507a92a9ef7f3fe86103b
并替换掉下面代码中的XXX
- curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=xxx/api/misystem/arn_switch -d "open=1&model=1&level=%0Anvram%20set%20ssh_en%3D1%0A"
- curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=xxx/api/misystem/arn_switch -d "open=1&model=1&level=%0Anvram%20commit%0A"
- curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=xxx/api/misystem/arn_switch -d "open=1&model=1&level=%0Ased%20-i%20's%2Fchannel%3D.*%2Fchannel%3D%22debug%22%2Fg'%20%2Fetc%2Finit.d%2Fdropbear%0A"
- curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=xxx/api/misystem/arn_switch -d "open=1&model=1&level=%0A%2Fetc%2Finit.d%2Fdropbear%20start%0A"
复制代码 替换完成后如下(代码中的stok=xxx,替换成stok=5feb6714de5507a92a9ef7f3fe86103b)(stok=后面的数值,根据自己的路由器管理地址首页替换)
- curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=5feb6714de5507a92a9ef7f3fe86103b/api/misystem/arn_switch -d "open=1&model=1&level=%0Anvram%20set%20ssh_en%3D1%0A"
- curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=5feb6714de5507a92a9ef7f3fe86103b/api/misystem/arn_switch -d "open=1&model=1&level=%0Anvram%20commit%0A"
- curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=5feb6714de5507a92a9ef7f3fe86103b/api/misystem/arn_switch -d "open=1&model=1&level=%0Ased%20-i%20's%2Fchannel%3D.*%2Fchannel%3D%22debug%22%2Fg'%20%2Fetc%2Finit.d%2Fdropbear%0A"
- curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=x5feb6714de5507a92a9ef7f3fe86103b/api/misystem/arn_switch -d "open=1&model=1&level=%0A%2Fetc%2Finit.d%2Fdropbear%20start%0A"
复制代码
如果看文字比较抽象,那就看看下面图片,或许会比较明朗
键盘WIN+R键, 对话框中输入cmd
打开电脑自带的终端后,上面修改好stok的命令行,依次复制粘贴。
每一行复制粘贴进去后 都会出现{"code":0},每一行都要出现,才是成功的,
依次输入4条命令行之后,并都提示{"code":0},后就成功的开启SSH权限了,
有了ssh权限了 ,SSH的默认用户名是root ,我们还缺一个密码,
密码
我们需要用到小米AX3000T的 SN码 (SN码,有两个地方可以看,1:路由器背面标签页, 2:路由器管理首页 192.168.31.1)
复制SN码,到这个网址 https://wwang.pw/mi/ 换算登陆SSH后,用户名 root的密码,
有了SSH权限,有账户,有密码,
那我们就可以打开mobaxterm ————session——————SSH————remote host 后面的方框中输入,路由器的管理地址 192.168.31.1——————ok
登陆到路由器SSH界面后,输入用户名 root 密码 (上面链接中拿路由器SN码 换算出来的数值)
噔噔蹬蹬, 我们这时候已经成功进入,路由器SSH的管理界面了。
下面是SSH界面的简单介绍
前面的这些操作,只是单纯的开启SSH权限, 重启路由器后,stok数值的变化,导致我们想要再次登陆ssh后台的时候, 要再重新上面步骤的一系列操作。
如果你想要固化SSH(保持登陆SSH的 地址、用户名、密码 , 不变)
可以在 ,SSH界面下 ,依次复制粘贴下面的命令行
命令安装 ShellClash(注意:这里路由器需要联网,才能执行安装Shellclash。毕竟是从网上下载下载之后,才能安装)
- export url='http://t.jwsc.eu.org' && sh -c "$(curl -kfsSl $url/install.sh)" && source /etc/profile &> /dev/null
复制代码 下面是安装Sheellclash的过程截图,根据自己的世纪情况选择安装。
复制以下代码框中 的全部口令来 固化ssh (注意:这里路由器需要保持联网,毕竟是从网上下载下载之后,才能安装)
- echo -e 'admin\nadmin' | passwd root
- nvram set ssh_en=1
- nvram set telnet_en=1
- nvram set uart_en=1
- nvram set boot_wait=on
- nvram commit
- sed -i 's/channel=.*/channel="debug"/g' /etc/init.d/dropbear
- /etc/init.d/dropbear restart
- mkdir /data/auto_ssh
- cd /data/auto_ssh
- curl -O https://fastly.jsdelivr.net/gh/lemoeo/AX6S@main/auto_ssh.sh
- chmod +x auto_ssh.sh
- uci set firewall.auto_ssh=include
- uci set firewall.auto_ssh.type='script'
- uci set firewall.auto_ssh.path='/data/auto_ssh/auto_ssh.sh'
- uci set firewall.auto_ssh.enabled='1'
- uci commit firewall
- uci set system.@system[0].timezone='CST-8'
- uci set system.@system[0].webtimezone='CST-8'
- uci set system.@system[0].timezoneindex='2.84'
- uci commit
- mtd erase crash
- reboot
复制代码
下面是 固化过程中的截图
固化SSH后, 以后我们登陆 路由器的SSH 界面, 默认的用户名和密码都是 root/admin
下面开始 是 XIAOMI AX3000T 原系统 的分区文件备份过程
使用MobaXterm 进入SSH界面
在弹出的窗口中,选择SSH,并在下方的 remote host 中输入,路由器的管理地址:192.168.31.1,最后点击ok,进入ssh界面。
使用固化SSH后的 用户名和密码 root/admin 登陆SHH
登陆到SSH界面后, 就可以开始查看,并准备原系统分区文件了。
查看 小米AX3000T 默认分区列表, 并根据分区列表名字 编辑好对应的 备份命令
我们可以看到 小米AX3000T 一共有13个分区(主要是要记住,0--12分区所对应的文件名)
注:关于备份的文件名:理论上,只要你自己确保,过了一段时间后回来看备份的文件名,对应的是那个分区的,你想怎么命名都可以
我这里为了方便,就默认用原系统的文件名了。
命令行中XXXX 可以替换成你想要的任意字符
dd if=/dev/mtd0 of=/tmp/XXXX.bin
查看完 分区情况之后, 接下来我们就要 备份这些文件了 ,
下面的命令行 ,一条输入完成之后,直接回车,不分先后顺序!
备份分区0对应的文件spi0.0.bin
- dd if=/dev/mtd0 of=/tmp/spi0.0.bin
复制代码
备份分区1对应的文件BL2.bin
- dd if=/dev/mtd1 of=/tmp/BL2.bin
复制代码
备份分区2对应的文件Nvram.bin
- dd if=/dev/mtd2 of=/tmp/Nvram.bin
复制代码
备份分区3对应的文件Bdata.bin
- dd if=/dev/mtd3 of=/tmp/Bdata.bin
复制代码
备份分区4对应的文件Factory.bin
- dd if=/dev/mtd4 of=/tmp/Factory.bin
复制代码
备份分区5对应的文件FIP.bin
- dd if=/dev/mtd5 of=/tmp/FIP.bin
复制代码
备份分区6对应的文件crash.bin
- dd if=/dev/mtd6 of=/tmp/crash.bin
复制代码
备份分区7对应的文件crash_log.bin
- dd if=/dev/mtd7 of=/tmp/crash_log.bin
复制代码
备份分区8对应的文件ubi.bin
- dd if=/dev/mtd8 of=/tmp/ubi.bin
复制代码
备份分区9对应的文件ubi1.bin
- dd if=/dev/mtd9 of=/tmp/ubi1.bin
复制代码
备份分区10对应的文件overlay.bin
- dd if=/dev/mtd10 of=/tmp/overlay.bin
复制代码
备份分区11对应的文件data.bin
- dd if=/dev/mtd11 of=/tmp/data.bin
复制代码
备份分区12对应的文件KF.bin
- dd if=/dev/mtd12 of=/tmp/KF.bin
复制代码
备份的文件在,tmp文件夹,下面, 输入命令后,如果tmp文件夹下面,没有出现对应的备份文件名。 刷新tmp文件夹即可看到备份的文件名。
输入备份命令后,我们就可以在,tmp文件夹下,看到对应的文件名了。
这时候,我们需要选中对应的文件名,下载到本地文件夹上。
复制的方法有2种
方法1:可以点击左上角的,下载按钮后,选择需要保持的路径,即可下载保存。
方法2:选中要备份的文件,直接拖拽复制到,电脑本地文件夹上,即可复制保存。
关于备份命令的输入,
可以选择全部输入命令后,再一次性选择保存。(输入命令的途中,有可能遇到,路由器重启,自动清空tmp下已经,压缩好的文件。)
也可以输入一次命令后,直接保存后,在输入下一个备份命令。(好处:可以避免,输入命令后,路由器重启,导致tmp下之前输入的备份文件不见)
下面是输入备份压缩命令后的截图
这个是备份完成后的文件
备份过程中可能遇到的问题:
输入备份命令回车,SSH界面,没有反应,但路由器重新启动后,导致之前输入的备份命令,无效的,
解决方法:输入备份命令并回车后, 在路由器 没重启前,快速进入tmp文件夹,把对应的备份文件下载到本地即可)
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|