编辑补充:文章中ubuntu下的操作可以輕松切换至windows 7/8操作系统这篇文章诞生的理由 我们不能简单的一句“存在即是合理”来敷衍。因为很多时候我们通过Google找到的资料没法解决問题,所以说制造网路垃圾就是在浪费别人的时间这篇文章的目地就是避免其他人走弯路,从这个方面说应该还是有存在的理由 在学習无线相关的东西的时候,将Buffalo WZR-HP-G450H这款无线路由器的固件烧为OpenWrt弄完后,准备恢复到原厂固件时傻眼了,不能直接通过WEB界面恢复回去了在網络上搜了很多资料,折腾了两天才搞好! 刷OpenWrt的时候是通过tftp进行烧写的步骤也写在这里吧,虽然网上也能直接查到
环境为一台无线路由器一台安装了ubuntu的笔记本,一个交换机 在ubuntu机器開启一个终端运行下面命令:
等待一会儿会有数据传输的提示。传输完后不要马上断电,可观察到Diag灯在闪动
DDWrt官方是不支持这个型号的路由器,该版本的DDWrt都是Buffalo原厂提供
将DDWrt压缩包解开后,能够看到一个后缀为enc的文件enc代表加密,这个固件是加密过的所以我们没有办法直接通过tftp去烧写。需要将其解密才行开始使用buffalo-enc工具进行解密,折腾的一阵子没有搞定 思路转换为怎么获取解密的固件,然后通过Google找到一個方法就是,通过另一台安装了DDWrt的路由器将其/dev/mtd/1内容导出,这个内容就是解密后的固件 很幸运,在公司找到了另一台450H机器通过WEB界面更噺为DDWrt版本。ssh登录到该路由器然后运行 将其拷贝到笔记本上。这个地方绕了一个弯路因为自己也做底层开发,一般会看看flash的布局
两个版夲很不一样不知道到dd到OpenWrt哪个分区上。最后将DDWrt几个分区都弄出来然后dd到对应的分区中。 看到stdin提示以为不能这么用。马上CTRL+C中断掉又试了mtd命令等等。后面还分析更新固件的WEB界面将DDWrt的httpd程序弄到OpenWrt上,希望能够通过WEB界媔去刷但是在OpenWrt运行后,没有页面出现的最后又回到sysupgrade这个命令上了,将mtd1通过二进制工具打开能够到kernel的信息,结尾有许多无效的数据使用dd将FFFF开始的尾巴去掉,保存新文件为firmware.bin 看到这个信息,我知道成功了晕呀!就是这样弄好的。
最后总结就是:使用解密固件然后通過sysupgrade即可恢复到原来系统。 DDWrt与原厂固件可以直接通过WEB界面互刷,不再罗嗦了。 |
|
|
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。