3 ms·
it kills production daemons having long running stateful data whenever the netdev goes offline., systemd-networkd, that is.
by egberts1 4y ago
it kills production daemons having long running stateful data whenever the netdev goes offline., systemd-networkd, that is.
- viraptor 4y agoOnly 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.
- egberts1 4y agoIts never a good systemd-networkd default to be killing daemon whenever a netdev goes “cricket”.
- viraptor 4y agoIt'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.
- egberts1 4y agoTry it. Pull the Ethernet cable.
- viraptor 4y agoI 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.
- egberts1 4y agoit is a good thing you have no states to care for.
- crazy_hombre 4y agoAn ethernet interface is not a netdev. Netdevs are always virtual interfaces.