【查看當前系統分區信息】
cat /proc/mtd
顯示:
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】
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