[systemd-devel] multi-user.target only wants network.service if I'm doing 'systemct show runlevel3.target'

Francis Moreau francis.moro at gmail.com
Tue Dec 9 08:25:48 PST 2014


Hello Lennart,

Thanks for answering !

On 12/09/2014 02:10 PM, Lennart Poettering wrote:
> On Tue, 09.12.14 11:19, Francis Moreau (francis.moro at gmail.com) wrote:
> 
>> Hello,
>>
>> I've a very weird behaviour with systemd 217:
>>
>> # systemctl show -p Wants multi-user.target | grep network.service
>> # systemctl show -p Wants runlevel3.target | grep network.service
>> Wants= ... network.service ...
>> # systemctl show -p Wants multi-user.target | grep network.service
>> Wants=... network.service ...
>>
>> So basically the network.service is not part of the multi-user target
>> dependencies. But if I'm showing the state of the runlevel3 target, the
>> network service magically becomes a dep of multi-user.target.
>>
>> The network.service is an sysv service which is started by rc[345].d and
>> has in its LSB:
>>
>> Provide: $network
>>
>> Could anybody clarify what I'm facing ?
> 
> systemd lazy loads services from the file system as they are
> referenced. This includes symlinked aliases, which are only loaded when
> a unit is referenced by that specific name.
> 

Sorry but I don't really understand.

Do you mean that the network.service wasn't loaded although the
runlevel3.target, which is an alias for multi-user target (default
target) wants it ?

I would be glad if you could enlight me because I'm confused.

>> Also it appears that runlevel3 target is an alias for multi-user one.
>> Could anybody where this alias is done ? If that's in the source code of
>> systemd I would be curious to see where exactly.
> 
> The /usr/lib/systemd/system/runlevel[0-5].target symlinks create these
> alias names.
> 

I see now.

Thanks.



More information about the systemd-devel mailing list