On Mon, Feb 05, 2024 at 14:42:09 +0000, Daniel P. Berrangé wrote:
On Mon, Feb 05, 2024 at 03:14:08PM +0100, Jiri Denemark wrote:
> When checking for machined we do not really care whether systemd itself
> is running, we just need machined to be either running or socket
> activated by systemd. That is, exactly the same we do for logind.
That's not right. We very much *do* care whether systemd is
running.
If systemd-machined is installed on the host but the OS is
booted into sysvinit, then DBus will report that machined
can be activated, but if it is activated then it certainly
won't actually work.
I guess I didn't explain myself correctly, but this just changes our
machind service check to do the same we do for logind. That is, machine1
service must be enabled (listed by ListActivatableNames). If it is, it
must already be running (reported by ListNames) or systemd must be
running.
Are you saying we should properly handle situations when a service we
want to talk to is already running, but cannot work because systemd is
not running? I would expect the service never be running in such case as
it would just fail to start without systemd.
Jirka