Linux软件上电启动自动升级程序框架

  • Post author:
  • Post category:linux



1、设置设备Mac地址;




2、后台调用udhcpc工具为设备分配IP:让多设备能够有独立的IP,保证多设备并行升级,为批量生产提供保证;




3、在内存/temp目录下创建临时存储升级包的目录:保证存放升级包文件的目录干净,方便升级完后,干掉flash中历史软件,保证直接将新升级包整个目录的文件拷贝大flash提供足够的存储控件,




4、在软件调用私有方法,读取给设备升级用的NFS配置:NFS服务器的IP地址 + 目录,配置文件有固定格式,保证升级的NFS文件的准确性;




5、判断读取的NFS信息是否正确;




6、调用私有方法去除私有目录中的【回车符】;




7、延时。等待udhcpc获取IP成功:因为获取路由器或其他设备分配的IP需要一定的时间;




8、通过私有方法 完成NFS目录的挂载:通常直接使用system()函数;




9、读取NFS服务器目录下的升级配置文件:保证找到NFS服务器配置文件指定目录下的升级包位置及其升级包的名称;




10、使用stat系统调用,判断指定目录下的文件/或文件夹是否存在:保证避免升级包不在,却把原始flash中的软件删除了,导致设备不能正常使用;




11、将指定目录下的升级文件 拷贝到设备内存的/temp目录下创建临时存储升级包的目录下;




12、11步成功后,删除flash中原始的升级文件;




13、将设备内存的/temp目录下创建临时存储升级包的目录下的升级文件拷贝到flash中;




14、直接调用升级包软件中自动运行软件的脚本,让设备升级完后自动进入工作状态。





版权声明:本文为u012125696原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。