Design question: how to create installation package to cover all cases
Embedded system running ubuntu, this system is a blackbox to the user, you
can use web to see its status, but no console outputs until developers fly there. My design question is a general question, not for ubuntu only. we want to build the installation package for our application, each time user installs the new package in the running system, it's a black box to them. Our installation should cover all kinds of cases. Things i can think of: 1. what's the best/standard package creation procedure for ubuntu 12.04 ? any website ? seems there're different ways from web. 2. if this time my app is ver 1.1, next time it'll be 1.2, where to put this version info ? 3. if this board will be in the field for 20 years, will never come back, once a while we can install new kernel/file system/app in it, how to make sure this install can always work ? (think about windows update, things can get messed up, certain app version won't work with certain kernel/fs etc.) should be a dependency somewhere ? 4. what happens if in the middle of install, the board lost power, how to make sure it can still come back online when power is back ? 5. how to do rollback ? assume apt-get/dpkg has some commands ? Many thanks ! |
I suggest that you set up 2 software systems on the device and dual boot. When you update a system only do one system at a time. That way you can fall back on the other system if an upgrade goes badly wrong. You would also have to build in a way to fix a broken system from the good system.
-------------------- Steve Stites |
All times are GMT -5. The time now is 05:03 AM. |