[systemd-devel] Boot ordering
Christoph Pleger
Christoph.Pleger at cs.tu-dortmund.de
Thu Mar 19 06:27:11 PDT 2015
Hello,
>> Then, I still do not understand why my definition of a new target did
>> not
>> work. What is the difference between multi-user.target waiting for
>> basic.target on the one hand and new.target waiting for basic.target and
>> multi-user.target waiting for new.target on the other hand, aside from
>> that one intermediate step?
>>
>
> Everything else that is ordered before multi-user.target is started
> concurrently with your new.target.
Hm. But I have no idea why for example gdm3 is started while my test
script is still executing its sleep command. This is the output of
"systemd-analyze dot | grep gdm":
"shutdown.target"->"gdm.service" [color="green"];
"shutdown.target"->"gdm.service" [color="red"];
"graphical.target"->"gdm.service" [color="grey66"];
"x-display-manager.target"->"gdm.service" [color="green"];
"x-display-manager.target"->"gdm.service" [color="black"];
"gdm.service"->"systemd-user-sessions.service" [color="green"];
"gdm.service"->"getty at tty7.service" [color="green"];
"gdm.service"->"plymouth-quit.service" [color="green"];
"gdm.service"->"systemd-journald.socket" [color="green"];
"gdm.service"->"basic.target" [color="green"];
"gdm.service"->"system.slice" [color="green"];
"gdm.service"->"basic.target" [color="black"];
"gdm.service"->"x-display-manager.target" [color="grey66"];
"gdm.service"->"system.slice" [color="grey66"];
"gdm.service"->"getty at tty7.service" [color="red"];
"gdm.service"->"plymouth-quit.service" [color="red"];
"gdm.service"->"shutdown.target" [color="red"];
"getty at tty7.service"->"gdm.service" [color="red"];
"plymouth-quit.service"->"gdm.service" [color="red"];
"plymouth-halt.service"->"gdm.service" [color="green"];
"plymouth-reboot.service"->"gdm.service" [color="green"];
Color legend: black = Requires
dark blue = Requisite
dark grey = Wants
red = Conflicts
green = After
If I understand this correctly, gdm is pulled into the boot process only
by graphical.target, which according to target unit definitions should be
after multi-user.target , which should be after my new.target ...
The only thing I can imagine what causes my problem is that Debian jessie
does not use only systemd units, but also init scripts in /etc/rc*.d/ and
that this brakes my desired boot order.
Regards
Christoph
More information about the systemd-devel
mailing list