[systemd-devel] soft-reboot and surviving it

Thorsten Kukuk kukuk at suse.com
Mon Apr 29 12:21:31 UTC 2024


Sorry for the late response, we had a conference last week.

On Sat, Apr 20, 2024 at 8:18 PM Luca Boccassi <luca.boccassi at gmail.com> wrote:

> Having no dependency on the rootfs is a core requirement that we
> cannot change, the filesystem used is irrelevant. It's not going to
> work, it will break immediately if you are lucky and in subtle and
> invisible ways if you are not. Just move the binaries to a different
> image as a generic solution, and where possible remove them entirely.
> Portable services work great for this purpose.

Having all our kernel developers around last week I used the
opportunity to discuss this with them. They don't agree, our btrfs
developer does not see any issues with this in the way we set up and
use btrfs. It's only one filesystem at all, it stays mounted and your
portable service would create the same issues in a default setup if
you put it in /var or so.
They are much more worried about possible memory fragmentation by soft-reboot.

But for other reasons I currently don't plan to start the application
directly from "/usr" but I'm looking at two other solutions:
We have the root filesystem mounted read-only a second time below
/.snapshots/XXX/..., which does not get unmounted, too.
So I'm currently looking how to use that and how I can map that into
"/usr" for a service.
Another idea is using "RootDirectory=" and "RootEphemeral=", the
problem is only that it requires that "/var" is on the same btrfs
filesystem as "/", but our recommendation is to put "/var" on a
separate partition.

Regards,
Thorsten

-- 
Thorsten Kukuk, Distinguished Engineer, Senior Architect, Future Technologies
SUSE Software Solutions Germany GmbH, Frankenstraße 146, 90461
Nuernberg, Germany
Managing Director: Ivo Totev, Andrew McDonald, Werner Knoblich (HRB
36809, AG Nürnberg)


More information about the systemd-devel mailing list