|
本帖最后由 supper800 于 2019-2-15 14:19 编辑
固件备份,没有风险的,但是固件还原有一定风险,小白进阶的教程。目前光猫固件备份有 四种方式:
1.通过芯片烧录器备份
2.通过telnet备份
3.通过ttl备份
4.通过JTAg备份(不常见,这里不做介绍)
下面我们先介绍最简单的第1种
把芯片用吹风机吹下来,最好是买个专业的焊台,带热风枪和烙铁的那种,把芯片放在编程器上直接读。非常简单,如果有不会的,可以回复我(记得贴图)。
然后我们来说下最常见的备份方法,通过telnet、TTL备份
首先我们进入系统,如果进入系统请见帖子
https://www.right.com.cn/forum/f ... 1&extra=#pid3537186
进入系统后,我们再putty里回车(按Enter键,怕小白不懂),进入这个系统可以说就是Shell,也可以说linux
我们就能通过命令来完成我们的备份,首先第一个命令,如果显示无此命令呢,说明当前shell不完整,还需要补齐,这个我会另开一个帖子写
这里我们选择华为8145v为试验环境,别的光猫可能有不一样的地方
dev: size erasesize name
mtd0: 00100000 00020000 "
mtd1: 0ff00000 00020000 "ubifs"
mtd2: 00000000 00000000 "reserved"
mtd3: 0009b000 0001f000 "ubootA"
mtd4: 0009b000 0001f000 "ubootB"
mtd5: 0003e000 0001f000 "flash_configA"
mtd6: 0003e000 0001f000 "flash_configB"
mtd7: 0003e000 0001f000 "slave_paramA"
mtd8: 0003e000 0001f000 "slave_paramB"
mtd9: 00307000 0001f000 "kernelA"
mtd10: 00307000 0001f000 "kernelB"
mtd11: 02815000 0001f000 "rootfsA"
mtd12: 02815000 0001f000 "rootfsB"
mtd13: 0003e000 0001f000 "wifi_paramA"
mtd14: 0003e000 0001f000 "wifi_paramB"
mtd15: 0003e000 0001f000 "system_param"
mtd16: 0141a000 0001f000 "file_system"
mtd17: 0081d000 0001f000 "frameworkA"
mtd18: 0081d000 0001f000 "frameworkB"
mtd19: 07003000 0001f000 "apps"
看到这么多分区,以及地址,养成一个好爱好,复制下来存到文本中
- mtd0: ="startcode"
- mtd1: ="ubifs"
- mtd2: = "reserved"
- mtd3: = "ubootA"
- mtd4: = "ubootB"
- mtd5: = "flash_configA"
- mtd6: = "flash_configB"
- mtd7: = "slave_paramA"
- mtd8: = "slave_paramB"
- mtd9: = "kernelA"
- mtd10: = "kernelB"
- mtd11: = "rootfsA"
- mtd12: = "rootfsB"
- mtd13: = "wifi_paramA"
- mtd14: = "wifi_paramB"
- mtd15: = "system_param"
- mtd16: = "file_system"/ r"
- mtd17: = "frameworkA"
- mtd18: = "frameworkB"
- mtd19: = "apps"
- ubi0_13 = "jffs2"
复制代码 A和B分区是一样的,所以只需备份其中一个即可,现在都设置为双启动,一个使用一个备份可以切换的,从设计角度讲
下面我们进行备份,首先你要准备一个U盘(fat32格式化,防止不认盘)插到光猫的接口上,如果光猫没接口,那就应该淘汰了,当然tftp大法也是可以的,太麻烦了,这里不介绍
据我所知从天翼网关1.0开始就配USB口了,因为AB分区都一样,所以只备份一个就可以了
下面输入备份命令,每行输入一次
dd if=/dev/mtd0 of=/mnt/usb/USB_disc1/0.bin
dd if=/dev/mtd1 of=/mnt/usb/USB_disc1/1.bin
dd if=/dev/mtd2 of=/mnt/usb/USB_disc1/2.bin
dd if=/dev/mtd3 of=/mnt/usb/USB_disc1/3-uboot.bin
dd if=/dev/mtd5 of=/mnt/usb/USB_disc1/5.bin
dd if=/dev/mtd7 of=/mnt/usb/USB_disc1/7.bin
dd if=/dev/mtd9 of=/mnt/usb/USB_disc1/9-kernel.bin
dd if=/dev/mtd11 of=/mnt/usb/USB_disc1/11-rootfs.bin
dd if=/dev/mtd13 of=/mnt/usb/USB_disc1/13.bin
dd if=/dev/mtd15 of=/mnt/usb/USB_disc1/15.bin
dd if=/dev/mtd16 of=/mnt/usb/USB_disc1/16.bin
dd if=/dev/mtd17 of=/mnt/usb/USB_disc1/17.bin
dd if=/dev/mtd19 of=/mnt/usb/USB_disc1/19.bin4
dd if=/dev/ubi0_13 of=/mnt/usb/USB_disc1/0_13.bin
U盘根目录下这些 bin文件就是各分区的完整备份至此备份固件完毕,下面请看教程三:固件修改
https://www.right.com.cn/forum/forum.php?mod=viewthread&tid=453783
|
|