ubuntu-phone team mailing list archive
-
ubuntu-phone team
-
Mailing list archive
-
Message #15595
Re: How the OTA works in detail?
On Wed, Sep 16, 2015 at 02:16:52PM +0200, Matthias Apitz wrote:
> > > Can someone shed a bit light over how the OTA works in detail or point
> > > me to some pages about that, i.e. how the fetch of the images and the
> > > installation into the BQ E4.5 works? Thanks in advance
> > https://wiki.ubuntu.com/ImageBasedUpgrades
> Thanks! I'm trying to understand the OTA process; as I understand, after
> fetching the files, an Upgrader is launched from the recovery image to
> update the phone's partitions ... what I do not understand is the
> folliwing example:
> I fetched the OTA-6 files for my device/channel which are:
> $ ls
> custom-996a0631cdd3014deb88bfa3c228a70922d68ea953607e3133d94713b351f650.tar.xz
> device-169bc102d21754e91d142385ffadb32b63cfa92831b82f221b5f38d9bc65b687.tar.xz
> ubuntu-59b0c7aa8af63dda3a06005a6087c1faa4ed8993321293b276e7f7021d0cb0a3.tar.xz
> version-25.tar.xz
> when I now look for two example files in the tar files:
> $ tar xzf ubuntu-59b0c7aa8af63dda3a06005a6087c1faa4ed8993321293b276e7f7021d0cb0a3.tar.xz system/etc/apparmor.d/local/usr.lib.telepathy^C
> $ tar xzf ubuntu-59b0c7aa8af63dda3a06005a6087c1faa4ed8993321293b276e7f7021d0cb0a3.tar.xz system/etc/apparmor.d/cache/usr.lib.telepathy^C
> $ ls -l system/etc/apparmor.d/*/usr.lib.telepathy
> -rw------- 1 guru wheel 200656 25 ago 19:39 system/etc/apparmor.d/cache/usr.lib.telepathy
> -rw-r--r-- 1 guru wheel 124 25 ago 19:35 system/etc/apparmor.d/local/usr.lib.telepathy
> $ md5 system/etc/apparmor.d/*/usr.lib.telepathy
> MD5 (system/etc/apparmor.d/cache/usr.lib.telepathy) = 6681f89d5dd73d76580000f2035722d5
> MD5 (system/etc/apparmor.d/local/usr.lib.telepathy) = dd65bcf98ff23b7c811d0380b5d6947f
> i.e. both above files have last mod time as 25 ago ...
> When I now look into my device which was updated on September 13, around
> 7.20am I see:
> phablet@ubuntu-phablet:~$ ls -l /etc/apparmor.d/cache/usr.lib.telepathy /etc/apparmor.d/local/usr.lib.telepathy
> -rw------- 1 root root 200656 sep 13 07:21 /etc/apparmor.d/cache/usr.lib.telepathy
> -rw-r--r-- 1 root root 124 ene 29 2015 /etc/apparmor.d/local/usr.lib.telepathy
> phablet@ubuntu-phablet:~$ sudo md5sum /etc/apparmor.d/*/usr.lib.telepathy
> 6681f89d5dd73d76580000f2035722d5 /etc/apparmor.d/cache/usr.lib.telepathy
> dd65bcf98ff23b7c811d0380b5d6947f /etc/apparmor.d/local/usr.lib.telepathy
> i.e. only one file was really updated, the other not. Why not both in
> this example? What decides if a give file on the device will be renewed
> or not?
What you downloaded were the full image tarballs; these are the ones that
are used when initially flashing a device, or if so much of the system has
changed that it's not useful to apply a delta upgrade.
But if you're currently running OTA-5, instead your phone will download the
delta tarballs for OTA-6. The deltas are generated as a file-wise diff
between the new and old filesystems. If a file's contents haven't changed
between the old and new images, it won't be included in the delta,
regardless of whether the timestamp has changed.
And /etc/apparmor.d/local/usr.lib.telepathy is a rather simple file that
won't change very often:
$ cat /etc/apparmor.d/local/usr.lib.telepathy
# Site-specific additions and overrides for usr.lib.telepathy.
# For more details, please see /etc/apparmor.d/local/README.
$
So the delta is optimized to avoid including a pointless copy of this file.
We don't care about timestamps for these files on the filesystem.
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
slangasek@xxxxxxxxxx vorlon@xxxxxxxxxx
Attachment:
signature.asc
Description: Digital signature
Follow ups
References