olpc-update and deletion of old images

Daniel Drake dsd at laptop.org
Mon Sep 6 11:12:42 EDT 2010


Hi,

When olpc-update updates you from version A to version B, version A
remains on the system and can be accessed by booting with the 'O' game
key held down.

As far as I know, this functionality is rarely used, and has inherent
problems. Specifically it requires Sugar developers to be able to
predict the future. For example, if the datastore changes in a newer
sugar version, the new sugar version will boot and convert the
datastore to the new format. But if you then boot the old OS version,
you won't see anything in your journal, since the old sugar doesn't
support the new datastore format. (similar problems could occur in
other parts of the system)

It also brings in more headaches. While the updates are somewhat
efficient (files that do not change between 2 versions are only stored
on disk once), there is always a space overhead in having 2 versions
of the system on disk. And during big updates (e.g. F9 to F11), almost
every file changes, meaning that little disk space is left after doing
the update.

There is no UI to delete the 2nd stored version, the only way to do it
at the moment is from the Terminal (not suitable for deployments).

My proposal is to modify the initramfs, removing the code that
supports alternate boot (O game-key). And if it encounters an old
version stored on disk, it will delete it during the boot process.

Having 2 "copies" remains an integral part of the olpc-update process,
but the old version would be deleted as soon as its not needed.

Thoughts?

Daniel



More information about the Devel mailing list