分类: 电脑技术
作者: admin

用mtd 查看系统分区、备份恢复固件和刷新固件

查看当前系统分区信息
XML/HTML代码
  1. cat /proc/mtd
显示:
XML/HTML代码
  1. dev:    size   erasesize  name
  2. mtd0: 00050000 00010000 "u-boot"
  3. mtd1: 00020000 00010000 "u-boot-env"
  4. mtd2: 00f80000 00010000 "firmware"
  5. mtd3: 00107440 00010000 "kernel"
  6. mtd4: 00e78bc0 00010000 "rootfs"
  7. mtd5: 00810000 00010000 "rootfs_data"
  8. mtd6: 00010000 00010000 "art"
其中,mtd2就是固件分区(firmware)
备份固件firmware
XML/HTML代码
  1. dd if=/dev/mtd2 of=/tmp/firmware_backup.bin
然后用winscp登陆路由器tmp目录,将固件文件firmware_backup.bin保存到电脑中。
恢复固件firmware
先用winscp将固件文件firmware_backup.bin传至路由器tmp目录,然后:
XML/HTML代码
  1. mtd -r write /tmp/firmware_backup.bin firmware
即可恢复,恢复完成路由器会自行重启
备份恢复Openwrt路由器配置
#备份自定义路由器信息,包括新安装软件:
XML/HTML代码
  1. dd if=/dev/mtd5 of=/tmp/overlay.bin
#恢复备份设置并重启:
先用winscp将备份文件overlay.bin传至路由器tmp目录,然后:
XML/HTML代码
  1. mtd -r write /tmp/overlay.bin rootfs_data
#仅备份路由器配置:
XML/HTML代码
  1. sysupgrade -b /tmp/back.tar.gz
#恢复路由器配置:
XML/HTML代码
  1. sysupgrade -f /tmp/back.tar.gz
恢复Openwrt路由器默认设置
#删除/overlay分区所有文件,重启即恢复默认设置:
XML/HTML代码
  1. rm -rvf /overlay/* && reboot
#使用mtd清除/overlay分区信息后重启即恢复默认设置:
XML/HTML代码
  1. mtd -r erase rootfs_data
以上是路由器,针对安卓机顶盒或者光猫等linux系统的设备也同样适用。
如需查看挂载情况可以输入命令
XML/HTML代码
  1. df -h
可以看到分区挂载情况和容量,对于未挂载分区文件查看可以使用mount命令挂载,然后查看或者修改。