找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 20993|回复: 13

怎么备份整个openwrt?

[复制链接]
发表于 2013-9-15 18:12 | 显示全部楼层 |阅读模式
手上有个刷好openwrt的路由。
我想把整个openwrt都备份出来,该怎么弄?
希望可以详细点,如果能远程教的话,也可以。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2013-9-17 12:55 | 显示全部楼层
关键看你的openwrt是y保存在什么地方。一般来说,boot是恒定的,不需要备份,需要备份的是rootfs

x86的版本
在一台普通的PC中通过U盘启动,所以整个openwrt都放在了U盘中,在linux中使用dd工具就可以将整个U盘做成一个镜像进行备份。dd if=/dev/sdb of=./openwrt-x86-backup.img

ar71xx版本
以RB450G为例,该设备有两个分区的数据需要备份,一个是boot,一个是rootfs,boot的话用的是官方的,所以不需要备份,rootfs可以通过tar -cvzf openwrt-rootfs-backup.tar.gz /,然后拷贝出来即可。

点评

你好,如果我用 dd 命令 备份了U盘,恢复 U盘 的命令如何写呀? 谢谢  详情 回复 发表于 2023-1-11 16:04
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2013-9-17 15:04 | 显示全部楼层
真的想完全备份的话只有一招,那就是编程器伺候。不过要拆芯片出来。。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2013-9-17 16:35 | 显示全部楼层
先cat /proc/mtd
查看分区
备份
dd if=/dev/mtd5 of=/tmp/firmware.bin
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2015-1-19 22:17 | 显示全部楼层
本帖最后由 quine 于 2015-1-19 22:19 编辑

不知道这里的方法 bb 14.07是否支持
http://www.openwrt.com.cn/bbs/thread-1273-1-1.html
http://www.v2ex.com/t/131986
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2015-1-19 22:55 | 显示全部楼层
本帖最后由 quine 于 2015-1-19 23:16 编辑

这里有人用的方法
http://abibjunior.blogspot.com/2014/07/full-backup-openwrt.html
查看
root@openwrt:~$ cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00020000 00020000 "CFE"
mtd1: 000dff00 00020000 "kernel"
mtd2: 00ee0000 00020000 "rootfs"
mtd3: 00a20000 00020000 "rootfs_data"
mtd4: 00020000 00020000 "nvram"
mtd5: 00fc0000 00020000 "firmware"

备份
root@openwrt:~$ cat /dev/mtd5 > /tmp/backup_openwrt.bin

恢复
root@openwrt:~$ cd /tmp && mtd -e firmware -r write backup_openwrt.bin firmware



相比之下
http://www.v2ex.com/t/131986
2.dd if=/dev/mtd9 of=/tmp/firmware_backup.bin
得到固件备份文件 firmware_backup.bin,在 /tmp 目录下
3.恢复该固件:
将 firmware_backup.bin 上传至 /tmp,使用命令 mtd -r write /tmp/firmware_backup.bin firmware



用dd命令备份,不知道跟cat命令备份有啥区别?我刚才试了一下,两个命令备份出来的文件大小是一样的,但校验值不一样

另外,我的路由器是wndr4300,如上两种方法备份出来的文件太大,123904KB,没法保存在 /tmp目录,只好保存在远程挂载的 cifs目录下,将来恢复起来还得先想办法挂载远程目录,似乎很麻烦。

不过上面第二个链接里 nanpuyue 也提到
不过,如果在没有重刷固件的情况下,我建议仅对 /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

这样的话,用原先刷机的固件 + 备份的 overlay目录,应该就可以实现 openwrt 完整的恢复了吧。


btw,不知道安装了 kmod-* 之类的内核补丁后, mtd的firmware分区是否会发生变化,如果会发生变化,那么只备份 overlay目录估计还不够




点评

前两天试了一下,nanpuyue的方法似乎管用。 另外,如果想把刷了 openwrt的wndr4300完全重置的话,运行如下两条命令就够了么? rm -rvf /overlay/* reboot  详情 回复 发表于 2015-2-20 12:16
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2015-1-21 12:01 | 显示全部楼层
先mark一下!
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2015-2-20 12:16 | 显示全部楼层
本帖最后由 quine 于 2015-2-20 12:17 编辑

前两天试了一下,nanpuyue的方法似乎管用。

另外,如果只想把刷了 openwrt的wndr4300完全重置(不恢复overlay目录)的话,运行如下两条命令就够了么?
rm -rvf /overlay/*
reboot

点评

网件4300可以刷bin 格式的固件吗?  详情 回复 发表于 2015-2-24 16:32
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2015-2-24 16:32 来自手机 | 显示全部楼层
quine 发表于 2015-2-20 12:16
前两天试了一下,nanpuyue的方法似乎管用。

另外,如果只想把刷了 openwrt的wndr4300完全重置(不恢复 ...

网件4300可以刷bin 格式的固件吗?

点评

不知道,只刷过 .img的,netgear原厂固件也是.img的  详情 回复 发表于 2015-2-24 17:04
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2015-2-24 17:04 | 显示全部楼层
厚无形黑无色 发表于 2015-2-24 16:32
网件4300可以刷bin 格式的固件吗?

不知道,只刷过 .img的,netgear原厂固件也是.img的
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2016-3-6 16:50 | 显示全部楼层
感谢,标记。应用。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2019-3-30 18:45 | 显示全部楼层
非常感谢,很好用的方案。
手头好多一样的小路由整802.11r,这样刷机方便太多了
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2019-10-4 13:07 | 显示全部楼层
再次思考一遍
怎么备份整个openwrt
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2023-1-11 16:04 | 显示全部楼层
本帖最后由 vbzcc 于 2023-1-11 16:06 编辑
ioiioi 发表于 2013-9-17 12:55
关键看你的openwrt是y保存在什么地方。一般来说,boot是恒定的,不需要备份,需要备份的是rootfs

x86的 ...

你好,如果我用 dd 命令 备份了U盘,恢复 U盘 的命令如何写呀? U盘不一样大,也可以恢复吗?

谢谢
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-9-20 23:18

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com

快速回复 返回顶部 返回列表