[systemd-devel] Using systemd.offline-updates from an ostree based system

Richard Hughes hughsient at gmail.com
Fri Apr 26 12:49:10 UTC 2019

On Fri, 26 Apr 2019 at 09:54, Lennart Poettering <lennart at poettering.net> wrote:
> Hmm, the assumption was always that / was mutable if offline updates
> are used to update /...

Right, I don't know if I'm misusing the offline updates feature to
update firmware. If there's something else I should be using I'm open
for ideas.  I guess shutdown is another time the update could be
applied, but it's not really what the user expects.

> I have the suspicion the ostree folks might have some specific ideas
> on how to do this in their environment?

I can certainly ask. I tried Ryans suggestion of putting the symlink
in /sysroot (which is mutable) but this doesn't get "assembled" into
the / soon enough for the systemd generator.

> What precisely is writable on those systems? Is /etc? You need
> something that is accessible during early boot (i.e. right after the
> transition from the initrd to the host OS). This excludes /var in the
> general case, but includes /etc, / or /usr...

/etc works, although it seems the wrong place for this kind of thing.

> Given that GRUB doesn't support that and maybe you don't want to bind
> yourself to EFI variables it's not the best approach anyway?

Perhaps not, the 2xBLS thing doesn't help either.

> I'd not make dynamic changes to ESP or /boot I must say (i.e. 2. +
> 3. from the list above). It should contain static data only I am sure,
> only updated at system updates.

I guess /boot works from a logical and mutable point of view. Would
you be open to a patch to system-update-generator.c that supports
looking for (and deleting) a /boot/system-update -- I think even if
/boot is the ESP I think it still works. The other path I could try is
/sysroot/system-update which might work, although is ostree specific.


More information about the systemd-devel mailing list