首先说一句,TFTP救砖是十分讲究技巧的,tftp的有效时间非常短,具体情况视CFE不同。我的一台WRH54G就短到让人心寒,远小于半秒。有些人喜欢用ping TTL=100来作为tftp的标志,却总是也刷不进去,就是时机没掌握好。
连好TTL线,在CFE启动的开始,注意看,在一个比较长的等待(其实也很短)之后闪过一个“tftp server”,立即按下tftp的回车,看见LAN状态灯闪烁即为成功。
而后就是“Programing...”,出现“Done.”之后就可以拔电重启了。有些路由的CFE不会自动重启的,BCM5354比较常见。
*************************************************************************
DD-wrt:
telnet或SSH登入路由运行
dd if=/dev/mtd/0 of=/tmp/cfe.bin
dd if=/dev/mtd/3 of=/tmp/nvram.bin
cfe.bin 和nvram.bin就变存在/tmp目录中
打开路由的SSH用WinSCP就可以将/tmp/CFE.bin、nvram.bin拷回来
刷CFE:
用WinSCP将修改好的CFE.bin、nvram.bin拷到/tmp中,执行命令:
cd /tmp
mtd write cfe.bin cfe
mtd write nvram.bin nvram
nvram commit
reboot
***********************************************************************
Tomato:
telnet或SSH登入路由运行
dd if=/dev/mtd0 of=/tmp/cfe.bin (注意比DD-wrt少了一个斜杠)
dd if=/dev/mtd4 of=/tmp/nvram.bin (注意mtd4)
cfe.bin 和nvram.bin就变存在/tmp目录中
打开路由的SSH用WinSCP就可以将/tmp/CFE.bin、nvram.bin拷回来
cat /proc/mtd可以查看flash。Tomato下边CFE显示为pmon
******************************************************************************
清空NVRAM(DD-wrt,有待测试):
CFE下:nvram erase
Linux下:mtd erase nvram、mtd erase linux、mtd erase cfe