Eu me deparei com um problema muito irritante ao reiniciar / desligar. Por algum motivo estranho, o desligamento sempre leva o tempo "máximo".
Consegui rastrear a causa para networking.service
que o tempo limite seja de 90 segundos tentando derrubar várias interfaces. Suspeito que o mesmo também cause um atraso desnecessário ao inicializar (cerca de 30 segundos), mas posso viver com isso.
Minha rede consiste em uma interface física, sobre a qual ficam algumas VLANs e pontes sobre elas. Nem a interface física nem as VLANs possuem endereços associados a elas, ou seja, simplesmente:
allow-hotplug enp2s0
iface enp2s0 inet manual
auto vlan2
iface vlan2 inet manual
vlan_raw_device enp2s0
auto br2
iface br2 inet manual
bridge_ports vlan2
O sistema em si não tem acesso direto à rede (sem endereços IPv4), mas atua como um host para uma máquina virtual (daí as pontes) que lida com a rede. Tudo funciona perfeitamente bem, exceto para o desligamento.
Alguém tem alguma ideia do que pode estar causando isso?
O log de desligamento (de journalctl -b -1
) mostra o seguinte:
Oct 03 09:09:25 myhostname systemd[1]: Deactivated swap /dev/disk/by-uuid/6db311a2-97ef-479c-8e35-d7f760c3d3b0.
Oct 03 09:09:25 myhostname kernel: br0: port 1(enp2s0) entered disabled state
Oct 03 09:09:25 myhostname kernel: br10: port 1(vlan10) entered disabled state
Oct 03 09:09:25 myhostname kernel: br3: port 1(vlan3) entered disabled state
Oct 03 09:09:25 myhostname kernel: br2: port 1(vlan2) entered disabled state
Oct 03 09:09:35 myhostname kernel: device vlan10 left promiscuous mode
Oct 03 09:09:35 myhostname kernel: br10: port 1(vlan10) entered disabled state
Oct 03 09:09:35 myhostname systemd[1]: Stopped ifup for enp2s0.
Oct 03 09:09:35 myhostname systemd[1]: Stopped ifup for enp3s0.
Oct 03 09:09:35 myhostname kernel: IPv6: ADDRCONF(NETDEV_UP): vlan10: link is not ready
Oct 03 09:09:45 myhostname ifdown[5961]: Removed VLAN -:vlan10:-
Oct 03 09:09:55 myhostname ifdown[5961]: Removed VLAN -:vlan6:-
Oct 03 09:10:05 myhostname ifdown[5961]: Removed VLAN -:vlan5:-
Oct 03 09:10:15 myhostname kernel: device vlan3 left promiscuous mode
Oct 03 09:10:15 myhostname kernel: br3: port 1(vlan3) entered disabled state
Oct 03 09:10:15 myhostname kernel: IPv6: ADDRCONF(NETDEV_UP): vlan3: link is not ready
Oct 03 09:10:25 myhostname ifdown[5961]: Removed VLAN -:vlan3:-
Oct 03 09:10:35 myhostname kernel: device vlan2 left promiscuous mode
Oct 03 09:10:35 myhostname kernel: br2: port 1(vlan2) entered disabled state
Oct 03 09:10:35 myhostname kernel: IPv6: ADDRCONF(NETDEV_UP): vlan2: link is not ready
Oct 03 09:10:45 myhostname ifdown[5961]: Removed VLAN -:vlan2:-
Oct 03 09:10:55 myhostname systemd[1]: networking.service: Stopping timed out. Terminating.
Oct 03 09:10:55 myhostname systemd[1]: networking.service: Control process exited, code=killed status=15
Então, claramente, há algo estranho acontecendo. Estou executando o Debian 9.5.
Depois de dias pesquisando e lendo um zilhão de listas de discussão, fóruns, postagens e outros enfeites diferentes, finalmente encontrei a resposta. O lento desligamento / reinicialização (e igualmente um atraso desnecessário de ~ 30 segundos na inicialização) foi causado pela antiga relíquia conhecida como
avahi-daemon
. Acontece que isso foi chamado para cada interface já removida do sistema e, portanto, o comando/script expira após 10 segundos.A remoção do pacote mencionado acima corrigiu tudo e tudo está funcionando sem problemas agora. O desligamento leva apenas alguns segundos e uma reinicialização completa até que os convidados virtuais também estejam em funcionamento é bem menos de dois minutos.