Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6236995
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 24, 20262026-05-24T10:56:53+00:00 2026-05-24T10:56:53+00:00

I have an application that runs on an embedded Linux device and every now

  • 0

I have an application that runs on an embedded Linux device and every now and then changes are made to the software and occasionally also to the root file system or even the installed kernel.

In the current update system the contents of the old application directory are simply deleted and the new files are copied over it. When changes to the root file system have been made the new files are delivered as part of the update and simply copied over the old ones.

Now, there are several problems with the current approach and I am looking for ways to improve the situation:

  • The root file system of the target that is used to create file system images is not versioned (I don’t think we even have the original rootfs).
  • The rootfs files that go into the update are manually selected (instead of a diff)
  • The update continually grows and that becomes a pita. There is now a split between update/upgrade where the upgrade contains larger rootfs changes.
  • I have the impression that the consistency checks in an update are rather fragile if at all implemented.

Requirements are:

  • The application update package should not be too large and it must also be able to change the root file system in the case modifications have been made.
  • An upgrade can be much larger and only contains the stuff that goes into the root file system (like new libraries, kernel, etc.). An update can require an upgrade to have been installed.
    Could the upgrade contain the whole root file system and simply do a dd on the flash drive of the target?
  • Creating the update/upgrade packages should be as automatic as possible.

I absolutely need some way to do versioning of the root file system. This has to be done in a way, that I can compute some sort of diff from it which can be used to update the rootfs of the target device.

I already looked into Subversion since we use that for our source code but that is inappropriate for the Linux root file system (file permissions, special files, etc.).

I’ve now created some shell scripts that can give me something similar to an svn diff but I would really like to know if there already exists a working and tested solution for this.

Using such diff‘s I guess an Upgrade would then simply become a package that contains incremental updates based on a known root file system state.

What are your thoughts and ideas on this? How would you implement such a system? I prefer a simple solution that can be implemented in not too much time.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-24T10:56:54+00:00Added an answer on May 24, 2026 at 10:56 am

    I believe you are looking wrong at the problem – any update which is non atomic (e.g. dd a file system image, replace files in a directory) is broken by design – if the power goes off in the middle of an update the system is a brick and for embedded system, power can go off in the middle of an upgrade.

    I have written a white paper on how to correctly do upgrade/update on embedded Linux systems [1]. It was presented at OLS. You can find the paper here: https://www.kernel.org/doc/ols/2005/ols2005v1-pages-21-36.pdf

    [1] Ben-Yossef, Gilad. “Building Murphy-compatible embedded Linux systems.” Linux Symposium. 2005.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have an application that runs on embedded linux (older kernel, 2.6.18). I'm using
I have an application that runs on an embedded processor (ARM), and I'd like
I have a Java application which runs on an embedded device. Because different devices
I have an system running embedded linux and it is critical that it runs
Basically, I have an application that runs every 15 minutes. I would like this
I have an application that runs transactions spanning over multiple databases on the same
We have an application that runs over load balanced server instances, and therefore is
I have an application that runs on Windows Mobile 6 Professional PDA devices. The
I have an application that runs fine when executed off the server. When clients
I have an application that runs on a terminal. The terminal is registered on

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.