Hacker News new | ask | show | jobs
by viraptor 1462 days ago
Only if you configure it to do that. You can use Wants= and After= for your service to start it after the network, but not restart otherwise.

The behaviour you describe is not unreasonable to want: If your network device goes away, what exactly are you binding the socket to? How are you restoring the listening when it comes back up? But it's up to you to say which one you want.

1 comments

Its never a good systemd-networkd default to be killing daemon whenever a netdev goes “cricket”.
It's not a networkd default. Networkd doesn't kill or even care about other services. The setting exists on the service's unit side. You have to explicitly specify how you want to depend on networking.
Try it. Pull the Ethernet cable.
I do that every day moving between WiFi and plugged in Ethernet. It seems you're misunderstanding what exactly is killing processes in your case. Try to collect the logs and maybe ask on serverfault. I promise networkd is not killing your processes and if you don't have strict dependencies in your unit file, systemd is unlikely to do that either.
An ethernet interface is not a netdev. Netdevs are always virtual interfaces.
it is a good thing you have no states to care for.