arm linux升级程序,实现嵌入式Linux设备的更新/升级系统

我有一个在嵌入式Linux设备上运行的应用程序,并且每时每刻都会对软件进行更改,偶尔也会对根文件系统甚至安装的内核进行更改。

在当前更新系统中,旧应用程序目录的内容被简单地删除,并且新文件被复制在其上。当对根文件系统进行更改时,新文件将作为更新的一部分进行传递,并简单地复制到旧文件系统。

现在,目前的方法有几个问题,我正在寻找方法来改善这种情况:

>用于创建文件系统映像的目标的根文件系统没有版本(我不认为我们甚至有原始的rootfs)。

>进入更新的rootfs文件是手动选择的(而不是diff)

>更新不断增长,成为一个皮塔。现在在升级包含较大rootfs更改的更新/升级之间存在分割。

>我的印象是,更新中的一致性检查相当脆弱,如果一切实施。

要求是:

>应用程序更新包不应太大,并且必须还能够在已进行修改的情况下更改根文件系统。

>升级可以更大,只包含进入根文件系统的东西(如新库,内核等)。更新可能需要升级才能安装。

可以升级包含整个根文件系统,只需做一个dd的闪存驱动器的目标?

>创建更新/升级包应尽可能自动。

我绝对需要一些方法来做根文件系统的版本控制。这必须以某种方式完成,我可以从它计算某种diff,它可以用来更新目标设备的rootfs。

我已经查看过Subversion,因为我们将它用于我们的源代码,但这不适合Linux根文件系统(文件权限,特殊文件等)。

我现在创建了一些shell脚本,可以给我类似于svn diff的东西,但我真的想知道,如果已经存在一个工作和测试的解决方案。

使用这种差异我猜,升级然后将变成一个包,包含基于已知的根文件系统状态的增量更新。

你的想法和想法是什么?你将如何实现这样的系统?我喜欢一个简单的解决方案,可以在不太多的时间实现。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值