一、验证“factory”真实分区名
cat /proc/mtd
你会看到类似如下输出(示例):
dev: size erasesize name mtd0: 10000000 00020000 "spi0.0" mtd1: 00100000 00020000 "BL2" mtd2: 00080000 00020000 "u-boot-env" mtd3: 00200000 00020000 "Factory" mtd4: 00200000 00020000 "FIP" mtd5: 00040000 00020000 "log" mtd6: 0f640000 00020000 "ubi"
我们要找的就是名字类似于 "factory_data"、"factory"、或 "art" 的那个分区。
你看到的是:mtd3: 00200000 00020000 "Factory"
那说明目标分区是 /dev/mtdblock3。
确认块设备路径ls -l /dev/mtdblock3
把 Factory 分区前 256KB 备份到 /tmp,并算一份校验:
输出结果留档:
root@GL-MT3000:~# BACK="/tmp/factory_backup_$(date +%F_%H-%M-%S).bin" root@GL-MT3000:~# dd if=/dev/mtdblock3 of="$BACK" bs=1k count=256 256+0 records in 256+0 records out root@GL-MT3000:~# sync root@GL-MT3000:~# md5sum "$BACK" b84a56001131fc95976c4846b5ab6f52 /tmp/factory_backup_2025-06-20_19-03-00.bin root@GL-MT3000:~# ls -lh "$BACK" -rw-r--r-- 1 root root 256.0K Jun 20 19:03 /tmp/factory_backup_2025-06-20_19-03-00.bin
万一需要恢复时使用:
dd if=/tmp/factory_backup_2025-06-20_19-03-00.bin of=/dev/mtdblock3; sync; reboot
没有评论:
发表评论