On Sun, Nov 5, 2017 at 8:52 AM, Sam Varshavchik <mrsam(a)courier-mta.com> wrote:
Tom H writes:
> On Sun, Nov 5, 2017 at 12:48 AM, Sam Varshavchik <mrsam(a)courier-mta.com>
> wrote:
>>
>> If the packaging guidelines are for a package dependency on
>> network-online.target, and especially if NetworkManager is installed
>> by default – as it is, then it seems wrong not to have this enabled
>> by default.
>
> Would boot be slowed down (by 30s?) if you switch to systemd-networkd
> for network management and "NetworkManager-wait-online.service" is
> enabled?
I just about finished writing a fairly extensive reply to this, when I
decided to delete it all, and replace it with just a simple, basic
question.
Why is it so difficult to make sure that a service gets started after
all IP addresses are set up by the system, for services that have this
requirement?
Why is it even necessary to argue which is the correct target for
that, or which system tool should be used to manage the system?
This doesn't seem like rocket science to me.
This seems like a fairly, basic, fundamental, aspect of system
administration. Can we agree on that? It should not be up to an
individual service to figure out how to do that. There should be a
fairly clear bit set somewhere, in however a particular's service
configuration that says: "start me at boot after all IP addresses are
configured", and whatever the system administration tool is
responsible for that, it makes it so. And it does so in a fairly
clear, and unambiguous manner. It shouldn't be necessary for anyone to
take any additional, manual steps. That's how things should be set up
out of the box.
I really would like to make sure that everyone agrees with this novel
idea.
Nobody should be saying, well, maybe try this, that or the other.
That's just missing the point, completely.
As I said in my previous email, if you want to ensure that the
network's up for services that depend on "network-online.target", you
have to enable the right "wait-online" service.
It's too bad that systemd doesn't provide a generic
"systemd-wait-online.service" that can ensure that the network's up
without using a specific software stack's implementation and methods.