U-Boot系统下刷机升级

openwrt固件升级指南及常用命令一、升级指南(U-boot方式升级)二、常用命令

openwrt固件升级指南及常用命令

一、升级指南(U-boot方式升级)

升级前请确保电脑和设备处于同一 二层网络,将电脑有线地址设置为192.168.1.254

重启设备,进入U-boot下

通过串口连接设备,重启时按键进入 U-Boot 控制台

reboot //重启设备,输入相关指令进入U-boot

2.设置设备地址和tftp服务器地址

setenv ipaddr 192.168.1.1 && setenv serverip 192.168.1.254 && ping 192.168.1.254

printenv //打印当前环境变量列表,验证是否设置成功

3.tftp升级固件

确保你的电脑运行 TFTP 服务器,并放置固件

在U-Boot下输入以下命令

tftpboot openwrt。。。.bin && imgaddr=$fileaddr

//openwrt。。.bin刷入的固件文件名称,固件下载的镜像地址$fileaddr,赋值给imgaddr变量

imxtract $imgaddr ubi && nand device 0

//把固件镜像里的ubi文件系统提取出来,写入nand闪存(0表示第一个nand设备)

[这里分两个nand区域 主固件区和备用区]

nand erase 0x00080000 0x03e00000 //主

nand write $fileaddr 0x00080000 $filesize

nand erase 0x3e80000 0x3e00000

//擦除 NAND 闪存中的特定区域,0x3e80000:擦除操作的起始地址,0x3e00000:擦除的大小(62 MB)

nand write $fileaddr 0x3e80000 $filesize

//下载到内存的固件写入 NAND 闪存,0x3e80000:写入的目标地址(和擦除地址一致)

reset //刷机完成后,用 reset 重启设备,让新固件生效

//这个步骤可选[输入相关指令,再次进入U-Boot,查看信息 printenv SN,printenv bootcount 启动次数,printenv active 固件分区,printenv upgrade_available 是否有可用固件]

4.恢复出厂设置,及重启生效(让先前的操作 firstboot生效)

firstboot -y && reboot

5.查看系统的版本信息,确认是否完成升级

cat /etc/openwrt_release

二、常用命令

dmesg 显示当前系统的内核日志

dmesg > start.log 将内核日志输出到start.log文件(如果存在这个文件,将会直接覆盖)

dmesg >> start.log 新的内核日志会追加到文件 start.log 的末尾,而不会覆盖原有内容

scp [选项] [源路径] [目标路径]

scp -r /home/user/docs user@192.168.1.100:/home/user/backup/

//将本地的 docs 目录(包括所有子文件和子目录)压缩并复制到远程主机的 /home/user/backup/ 目录

//-r:递归复制整个目录

ubus call system board 查看设备信息(硬件型号、固件版本等)