Openwrt mtd_mtd_write烧写固件

【查看当前系统分区信息】

cat /proc/mtd

显示:

dev:    size   erasesize  name
mtd0: 00050000 00010000 "u-boot"
mtd1: 00020000 00010000 "u-boot-env"
mtd2: 00f80000 00010000 "firmware"
mtd3: 00107440 00010000 "kernel"
mtd4: 00e78bc0 00010000 "rootfs"
mtd5: 00810000 00010000 "rootfs_data"
mtd6: 00010000 00010000 "art"

其中,mtd2就是固件分区(firmware)

【备份固件firmware】

dd if=/dev/mtd2 of=/tmp/firmware_backup.bin

然后用winscp登陆路由器tmp目录,将固件文件firmware_backup.bin保存到电脑中。

【恢复固件firmware】
先用winscp将固件文件firmware_backup.bin传至路由器tmp目录,然后:

mtd -r write /tmp/firmware_backup.bin firmware

即可恢复,恢复完成路由器会自行重启

【备份恢复Openwrt路由器配置】
#备份自定义路由器信息,包括新安装软件:

dd if=/dev/mtd5 of=/tmp/overlay.bin

#恢复备份设置并重启:
先用winscp将备份文件overlay.bin传至路由器tmp目录,然后:

mtd -r write /tmp/overlay.bin rootfs_data

#仅备份路由器配置:

sysupgrade -b /tmp/back.tar.gz

#恢复路由器配置:

sysupgrade -f /tmp/back.tar.gz

【恢复Openwrt路由器默认设置】
#删除/overlay分区所有文件,重启即恢复默认设置:

rm -rvf /overlay/* && reboot

#使用mtd清除/overlay分区信息后重启即恢复默认设置:

mtd -r erase rootfs_data

【刷新路由器固件】
#使用mtd刷新:
先用winscp将固件文件xxx.bin传至路由器tmp目录,然后:

mtd -r write /tmp/xxx.bin firmware

刷新完成后路由器会自动重启。

#使用sysupgrade更新,推荐:
先用winscp将固件文件xxx.bin传至tmp目录,然后:

sysupgrade /tmp/xxx.bin

发表评论

电子邮件地址不会被公开。 必填项已用*标注

198 views