On Mon, 2 Sept 2024 at 15:00, Thorsten Kukuk <kukuk@xxxxxxxx> wrote: > > Hi, > > after some more testing: the problem is the "+" prefix of > ExecStartPre, this does not work together with RootImage. Is this > supposed to work? Even if I cannot really imagine a valid use case for > this, except enhancing existing service files instead of rewriting > them for images. Hi, That's expected, see table at: https://www.freedesktop.org/software/systemd/man/latest/systemd.service.html#Command%20lines > On Tue, Aug 27, 2024 at 12:38 PM Thorsten Kukuk <kukuk@xxxxxxxx> wrote: > > > > Hi, > > > > When playing with soft-reboot and services running from a root image > > (in this case btrfs subvolume), I run into something which looks like > > a bug for me. > > So the service files have: > > RootImage=/dev/vda2 > > RootImageOptions=ro,subvolid=278 > > > > If a service file has any of the following three keywords in the > > service section (this example is from bind): > > Type=forking > > KillMode=process > > ExecStartPre=+/usr/libexec/bind/named.prep > > > > Then /run will not be created with tmpfs. If I remove all three > > keywords, /run will be created with tmpfs. > > > > Is there a special logic behind this? Or just a bug? > > > > With all other services I tested until now, I have in the logs: > > Aug 27 08:11:07 microos (rsyncd)[1452]: Applying namespace mount on > > /run/systemd/mount-rootfs/run > > Aug 27 08:11:07 microos (rsyncd)[1452]: Mounting tmpfs (tmpfs) on > > /run/systemd/mount-rootfs/run (0 "")... > > > > and it is working. But this two lines are missing with bind and all > > following operations will fail: > > Aug 27 10:25:11 microos (med.prep)[2442]: Applying namespace mount on > > /run/systemd/mount-rootfs/run/dbus/system_bus_socket > > Aug 27 10:25:11 microos (med.prep)[2442]: Followed source symlinks > > /run/dbus/system_bus_socket → /run/dbus/system_bus_socket. > > Aug 27 10:25:11 microos (med.prep)[2442]: Bind-mounting > > /run/dbus/system_bus_socket on > > /run/systemd/mount-rootfs/run/dbus/system_bus_socket (MS_BIND|MS_REC > > "")... > > Aug 27 10:25:11 microos (med.prep)[2442]: Failed to mount > > /run/dbus/system_bus_socket (type n/a) on > > /run/systemd/mount-rootfs/run/dbus/system_bus_socket (MS_BIND|MS_REC > > ""): No such file or directory > > Aug 27 10:25:11 microos (med.prep)[2442]: Failed to create destination > > mount point node > > '/run/systemd/mount-rootfs/run/dbus/system_bus_socket', ignoring: No > > such file or directory > > Aug 27 10:25:11 microos (med.prep)[2442]: Failed to mount > > /run/dbus/system_bus_socket to > > /run/systemd/mount-rootfs/run/dbus/system_bus_socket: No such file or > > directory > > Aug 27 10:25:11 microos (med.prep)[2442]: bind.service: Failed to set > > up mount namespacing: /run/dbus/system_bus_socket: No such file or > > directory > > > > Thanks, > > 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) > > > > -- > 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)