不死U-Boot

跟 UMU 一起玩 OpenWRT(高级篇1):编译不死 U-Boot

怎甘沉沦 提交于 2019-12-06 06:55:02
UMU 2010 年初就玩 OpenWRT/DD-WRT 了,蛋似编译东西还是初学者,本文纯属蛋疼的过程,欢迎批评教育,谢谢…… 首先到 https://github.com/pepe2k/u-boot_mod 看明白作者的说明。这里简单说一下原理:固件(firmware)刷坏,但 U-Boot 没坏,这是半砖,可以用 TTL 线连路由器,通过 U-Boot 的功能刷好 firmware。如果两者都坏了,叫全砖,只能把 Flash 拆下来,用编程器刷好 U-Boot 和 firmware。不死 U-Boot 就是修改了 U-Boot 的实现,使我们可以用 RJ-45 网线来救砖,省去拆机搭 TTL 线的麻烦。 本质上说,这东西并非真的不死,只要 U-Boot 被刷坏了,还是会死,不过几率不大,因为 OpenWRT 官方发行的 ROM 全都是保护 U-Boot 区域的,根据 UMU 的经验,只有三个情况会不小心或故意刷坏:1、从原厂固件刷不良固件;2、在 DD-WRT 下搞破坏(DD-WRT 没有保护 U-Boot);3、自制固件去掉 U-Boot 写保护后搞破坏……如果您真的这么蛋疼,还是准备编程器吧,只要是软件问题,在编程器面前没有砖的概念。(JTAG 也是救砖神器,但不是每台路由器都有,比如 DIR-505 就没有!) 由于 UMU 是 Windows 程序员,平时没有安装

跟 UMU 一起玩 OpenWRT(高级篇2):不拆机刷不死 U-Boot

廉价感情. 提交于 2019-12-05 10:18:22
在上一篇《 编译 D-Link DIR-505 的不死 U-Boot 》介绍了如何编译不死 U-Boot,但是不死 U-Boot 的作者只介绍了用 TTL 线刷方法,UMU 可不想拆机,毕竟拆机感觉并不好…… 第一个思路是刷上 DD-WRT 固件,但是找了一下 DD-WRT 木有支持 DIR-505,只好继续蛋疼地编译 OpenWRT。 第一遍在虚拟机从 12:20 编译到 23:56,花了将近 12 小时……刚开始时,有一个下载过程,不断失败,想想是因为公司的网络太烂了,于是把下载脚本改了一下: <openwrt-svn-dir>/trunk/scripts/download.pl 中的 wget -t5 --timeout=20 --no-check-certificate 改为 wget -t5 --timeout=120 --no-check-certificate 第二天来,刷上,没问题,于是开始改代码去掉 U-Boot 写保护,参考这篇《Openwrt 中刷写 uboot ART》 http://see.sl088.com/wiki/Openwrt_%E4%B8%AD%E5%88%B7%E5%86%99_uboot_art ,但结果很不幸,型号不同嘛! 接下来,凭自己的编程水平了,尝试改 <openwrt-svn-dir>/trunk/target/linux