The challenge here is that systemd considers "the network" to be up if *any* networking devices are up. I ran into this on my MythTV setup, where once the InfiniTV capture card was up (which uses a virtual network interface), systemd would give the green light for every other service to start up. Of course the virtual network interface would always come up first since it was just a kernel module loading, and didn't require a back-and-forth DHCP request. So bunches of services which bind to all available interfaces at start-up would bind to loopback and the capture card and that's it.
Per systemd this is "working as intended" because how are they supposed to know which network interface you want?
I solved this by putting a "sleep 5" into the start of network-online.target.
-justin
On Sun, Nov 5, 2017 at 11:05 AM, Tom H <tomh0665@xxxxxxxxx> wrote:
As I said in my previous email, if you want to ensure that theOn Sun, Nov 5, 2017 at 8:52 AM, Sam Varshavchik <mrsam@xxxxxxxxxxxxxxx> wrote:
> Tom H writes:
>> On Sun, Nov 5, 2017 at 12:48 AM, Sam Varshavchik <mrsam@xxxxxxxxxxxxxxx>
>> 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.
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.
_______________________________________________
users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to users-leave@lists.fedoraproject.org
_______________________________________________ users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx