搞机男  订阅  何许人也  

如何备份 OpenWrt 固件

新刷好的OpenWrt装了一大堆软件,然后一个不小心被你给搞挂了?

又要重新刷固件重新装软件重新配置?神烦?

Just Backup It!

如果路由器被你搞挂了,完全无法启动,那么你需要重刷固件并且恢复,按照这个来备份:

首先,查看你的 firmware 所对应的 mtd 编号 cat /proc/mtd,比如我的,

root@ABigBug:~# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00020000 00010000 "u-boot"
mtd1: 000e43ec 00010000 "kernel"
mtd2: 00eebc14 00010000 "rootfs"
mtd3: 004c0000 00010000 "rootfs_data"
mtd4: 00010000 00010000 "art"
mtd5: 00fd0000 00010000 "firmware"

这里就是 mtd5.

然后备份 firmware 到 /tmp 下就可以了

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

得到固件备份文件 firmware_backup.bin,在 /tmp 目录下.

以后要恢复固件的时候,首先想办法连上SSH,比如刷一个新固件,然后将 firmware_backup.bin 上传到 /tmp 下,利用 mtd 命令恢复即可。

mtd -r write /tmp/firmware_backup.bin firmware 

如果路由器配置被你完全搞乱了,但是还能启动并且可以连上SSH,那么按照下面来备份:

仅对 /overlay 打包备份即可

tar -czvf /tmp/overlay_backup.tar.gz /overlay

需要恢复的时候将 overlay_backup.tar.gz 上传至 /tmp ,然后清空 /overlay 并恢复备份:

rm -rvf /overlay/* 
cd /
tar -xzvf /tmp/overlay_backup.tar.gz

OK, 我个人建议你两种备份都预留一份,随时应对各种情况。


Carpe Diem.
Contact me at tink.im. 回到顶部