首页 > 系统相关 >全志系列芯片如何在Tina Linux中使用脚本完成定制化升级?

全志系列芯片如何在Tina Linux中使用脚本完成定制化升级?

时间:2023-03-20 21:32:24浏览次数:43  
标签:脚本 ota 全志 升级 swupdate 添加 Tina Linux 定制

1.主题

在Tina Linux中,如何使用脚本完成定制化升级

2.问题背景

硬件:全平台 软件:Tina 其他:支持OTA升级的平台,可实现脚本定制化升级

3.具体表现

在OTA升级过程中,添加定制化需求,实现控制变量升级。

4.问题分析

利用swupdate升级满足定制化脚本需求

5.解决办法

因为swupdate支持脚本,所以在升级过程中,添加能够实现定制升级的脚本即可,将带有定制升级的脚本编入策略描述文件(sw-descrition)OTA升级配置文件中(sw-subimgs),在打包ota升级包时,将脚本一起打包进ota包中。在进行下面的配置后,输入升级命令时,首先开始执行脚本中的内容,满足升级条件后,再进行升级流程。下面进行详细的步骤介绍:

1.swupdate支持shellscript脚本,需要以下功能配置(默认选中)

执行:make menuconfig/make ota_menuconfig
Allwinner  --->
    <*> swupdate............................. software update for embedded system
        Swupdate Settings  --->
            General Configuration  --->
                [*] enable pre and postinstall scripts
        Image Handlers  --->
            [*] shellscript

2.在swupdate文件夹下创建脚本,名字随意,在脚本中写入要实现的功能。例如:目前有一个方案需要升级,但是分为A,B两种产品,对应做了不同的功能,为了防止升级混淆,可以利用脚本去控制变量升级,比如A产品方案中的env,可以添加一个变量project=a,B产品方案中的env添加一个变量project=b,那么脚本中的内容就可以判断project=a或b时,继续完成升级。env中添加内容和脚本内容举例如下: env中: 在这里插入图片描述

脚本内容如下: 在这里插入图片描述

3.在描述文件中添加脚本功能,在sw-description中添加以下代码: 在这里插入图片描述

4.将脚本打包进ota包中,脚本名字可以任意起,我这里是preinstall_checkAB.sh。 在这里插入图片描述

5.重新编译主系统和recovery系统,烧录固件,打包ota包,再进行验证。

6.验证:当校验失败时,返回值为1,会看到如下打印,不能升级。 在这里插入图片描述

校验成功时,返回值为0,看到如下打印,升级成功。 在这里插入图片描述

标签:脚本,ota,全志,升级,swupdate,添加,Tina,Linux,定制
From: https://blog.51cto.com/u_15380233/6131936

相关文章

  • Linux 6.3内核Btrfs性能得到提升10倍优化
    Btrfs是一种支持写入时复制(COW)的文件系统,被广泛运用于各种 ​​Linux​​ 操作系统之中,目标是取代ext3文件系统,改善ext3的限制。Btrfs是一种支持写入时复制(COW)的文......
  • SELinux权限
    1.DAC和MAC在了解SELinux之前,我们先来了解一下Linux的两种访问控制策略:DAC和MAC1.1LinuxDACDAC,自主访问控制(DiscretionaryAccesscontrol)。系统只提供基本的验证,......
  • Linux 网络设备驱动整理
      注意:拥有硬件探测机制的总线,例如USB,PCI总线上的设备不需要dts描述;没有探测机制的总线,如I2C设备应该用dts描述。PCIE网卡因为属于pci设备,不需要dts描述;但是PCIE控......
  • Linux查看CPU信息
    #查看物理CPU个数cat/proc/cpuinfo|grep"physicalid"|sort|uniq#查看每个物理CPU中core的个数(即核数)cat/proc/cpuinfo|grep"cpucores"|uniq#查看......
  • linux根目录详解
    /   根目录:根目录,文件的最顶端,整个文件系统的根目录/bin   用户二进制文件:存放系统所需的重要命令/sbin  系统二进制文件:存放一些系统管理的命令,一般只能由超级权......
  • 实现用linux访问windows的共享文件?
    一、什么是samba?搭建Samba服务器是为了实现Linux共享目录之后,在Windows可以直接访问该共享目录。现在介绍如何在ubuntu16.04系统中搭建Samba服务。二、samba安装sudoapt......
  • 【Linux】基于LAMP架构搭建个人论坛网站
    一、前言什么是LAMP?简单的说就是​​Linux​​+​​Apache​​+​​MySQL​​+​​PHP​​这是一个常规的Web 服务器环境解决方案,使用其首字母缩写“LAMP”来引用。它是一......
  • linux分区基础
    添加一块40G的硬盘创建三个分区,第一个分区和第二个分区大小5G,第一个分区格式化XFS文件系统,第二个分区为EXT4文件系统,将两个文件系统分别手动挂载到/db1和/sdb2目录上,查看挂......
  • linux权限设定
    在计算机创建自己的名字​修改用户宿主目录​创建用户mysql禁止登录系统​查看创建的用户​使用password对自己名字账户进行锁定​解锁账户使用usermod禁用解锁​修改自己名......
  • linux 后台执行的总结
    命令+&以前写过使用方法https://www.cnblogs.com/toumingbai/p/15644274.html此方法直接关掉终端窗口会停止运行解决方法是先ctrl+d退出缺点是再次登入的时候无法切......