[systemd-devel] switch-root and local-fs.target

Lennart Poettering lennart at poettering.net
Tue Mar 12 06:43:47 PDT 2013

On Tue, 12.03.13 10:05, Harald Hoyer (harald.hoyer at gmail.com) wrote:

> We have a big problem now with local-fs.target in the initrd-switch-root.target
> now. Because local-fs.target is active now after serialization/deserialization,
> the whole boot process after the switch-root is screwed. All units depending on
> local-fs.target are started now immediately!!
> Solutions I can think of is:
> - not to serialize the targets as we do with the jobs now
> - set all targets to TARGET_DEAD on switch_root

No, please don't.

What's the story behind wanting to use local-fs.target for so many
different things? I mean, you now want to reach it three times. Twice
from the initrd, and once from the host, and everytime it shall have a
different meaning and be gone until the next time again, in some magical

THis sounds really wrong to me. Instead it appears natural to me to
simply have three different targets. i.e. "root-fs.target" +
"initrd-fs.target" in the initrd, and then "local-fs.target" is left for
the host? That way, after boot you can easily follow what has been
achieved when. 

What's the rationale here? I don't follow?

I'd really prefer not having to add special semantics for the switch
root transition serialization.

To underline this: I really think every unit should be activated once
during boot, and not forgotten and then activated again.


Lennart Poettering - Red Hat, Inc.

More information about the systemd-devel mailing list