本帖最后由 tm5880891 于 2020-3-25 02:33 编辑 ( Y3 m2 I1 p; B. b6 K
; p- b: f5 ~, y
1.通过/proc虚拟文件系统读取MTD分区表: / # cat/proc/mtd dev: size erasesize name mtd0: 0800000000020000 "whole flash" mtd1: 0020000000020000 "u-boot" mtd2: 0040000000020000 "parameter tags" mtd3: 0140000000020000 "kernel0" mtd4: 0040000000020000 "middleware" mtd5: 0080000000020000 "usercfg" mtd6: 0140000000020000 "kernel1" mtd7: 0060000000020000 "others" mtd8: 0040000000020000 "wlan" 7 t! M2 D5 w* r" n N
这就是所有的分区内容了
, d: ]3 e4 r. U
要求:需要使用 dd 命令依次取出这些分区里的内容
) X$ P2 F! g, Y' I7 K" T0 w
2.因中兴光猫自带的busybox 没有 dd 命令,因此需要导入一个带有dd命令的busybox , b2 M6 A$ o0 m$ v/ S
导入前要先查看光猫 CPU 信息,方便导入对应的busybox
3 e; \( ^, n: m' l* p- y' S/ # cat/proc/cpuinfo Processor : ARMv7 Processor rev 1 (v7l) BogoMIPS : 1599.07 Features : swp half fastmult edsp CPU implementer: 0x41 CPUarchitecture: 7 CPUvariant : 0x4 CPU part : 0xc09 CPUrevision : 1 2 v# [, f; P/ A2 X x9 f
Hardware : HGU R evision : 0000 Serial : 0000000000000000 / # ) r. e; ]; L- _0 X& J, w
注意到 Processor 为 ARMv7 Processor rev 1 (v7l) : l# u, R8 [! [1 e+ \
因此得导入arm v7l 版本的 busybox
) J* I7 v r* E4 B5 g$ X
在所在文件的目录下开启tftpd软件 cd /tmp tftp -g -r busybox-armv7l -l busybox-armv7l 192.168.1.2 chmod +x busybox-armv7l mv busybox-armv7l busybox ) T! H: G7 f/ ^" e
3.开始拷贝文件 # Y, v9 a1 z9 z& @
cd /tmp
0 a$ |* o3 l9 _ V3 d6 _, ]5 X. c dd if=/dev/mtd1 of=/tmp/u-boot.bin # 打包分区 tftp -l u-boot.bin -p 192.168.1.2 # 上传打包的分区到本地 tftp 服务器
8 v7 w6 n* Q6 B! k8 X; A至此,按各分区大小和所在目录分别传输完毕...
3 }; g1 e5 u/ f6 p2 x7 x# _5 o e9 r: F1 l5 o, J1 k5 I L
1 O K# h. |1 b m6 e+ D) z {0 ~% p) [, J
1 d0 j9 _2 ~- F# B5 _- b) | |