openwrt系统使⽤uboot更新固件1.httpd⽅式:学习实践科学发展观活动
Uboot启动时按住reset键,设置电脑ip:192.168.1.x
在电脑端登⼊192.168.1.1 进⼊升级界⾯升级
2. MTD
启动路由器,进⼊linux环境。
通过winscp 连接ssh  然后将 _ar71xx_.bin 拷贝到 /tmp ⽬录
切换到tty,在命令⾏下输⼊ mtd
mtd -r write /tmp/_ar71xx_.bin firmware
同理:如果刷Uboot 则执⾏如下命令
mtd -r write /tmp/uboot.bin u-boot
附录1:分区备份
备份art:dd if=/dev/mtd4 of=/tmp/art.bin容声冰箱好吗
写⼊art:mtd -r write /tmp/art.bin art
附录2:查看Flash分区
root@OpenWrt:/# cat /proc/mtd
dev:    size  erasesize  name
mtd0: 00020000 00010000 "u-boot"
mtd1: 000ecf6c 00010000 "kernel"
mtd2: 006e3094 00010000 "rootfs"
mtd3: 00550000 00010000 "rootfs_data"
mtd4: 00010000 00010000 "art"
mtd5: 007d0000 00010000 "firmware"黄河在咆哮
附录3:
如果你想从原来的tp-link固件升级到op 那就刷带factory的固件
如果你想从某个版本的op升级到新的op  那就sysupgrade固件
⽆论是从tp-link还是op升级都可以⽤factory固件
如果你需要更新系统后还保持原来的设置和安装的软件,就⽤sysupgrade
3.TFTPD32
1.在Windows上搭建TFTPD32 服务,然后把固件放在tftp服务器下
2.设置路由器的IP和IPserver
ar7240>setenv ipaddr 192.168.1.2
ar7240>setenv serverip 192.168.1.10
学校交通安全责任书3.在uboot命令下,就可以把tftp上的固件刷到路由器
/
/1.将固件加载到内存0x8000 0000
ar7240> tftpboot 0x80000000 wr841n-v5.bin
//2.擦除Flash地址0x9F02 0000 ⼤⼩0x3C0000的空间
ar7240> erase 0x9f020000 +0x3c0000
//3.将RAM中的数据拷贝到Flash中 cp.b src dst size[b w l]
ar7240> cp.b 0x80000000 0x9f020000 0x3c0000
尼古拉斯 凯奇
//4.启动内核
ar7240> bootm 0x9f020000
附录:
Easy-Link> printenv
兵临天地bootargs=console=ttyS0,115200 root=31:02 rootfstype=squashfs init=/sbin/init mtdparts=ar7240-nor0:128k(u-
boot),1024k(kernel),2816k(rootfs),64k(config),64k(ART)
bootcmd=bootm 0x9F020000
bootdelay=2
baudrate=115200
ipaddr=192.168.1.1
serverip=192.168.1.100
bootfile="firmware.bin"
loadaddr=0x80800000
ncport=6666
stdin=serial
stdout=serial
stderr=serial
ethact=eth0
Environment size: 364 bytes