重新启动/关闭时我遇到了一个最烦人的问题。由于某些奇怪的原因,关闭总是花费“最大”时间。
我已经能够追踪到在networking.service
尝试关闭一堆接口时超时 90 秒的原因。我怀疑这也会导致启动时不必要的延迟(大约 30 秒),但我可以忍受。
我的网络由一个物理接口组成,其上有一些 VLAN 和桥接器。物理接口和 VLAN 都没有任何与之关联的地址,即:
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
系统本身没有直接的网络访问权限(没有 IPv4 地址),但充当虚拟机(因此是网桥)的主机,然后由虚拟机处理网络。除了关机之外,一切都工作得很好。
有谁知道这可能是什么原因造成的?
关闭日志(来自journalctl -b -1
)显示以下内容:
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
很明显发生了一些奇怪的事情。我运行的是 Debian 9.5。
答案1
经过几天的谷歌搜索和阅读无数不同的邮件列表、论坛、帖子等等,我终于找到了答案。缓慢的关闭/重新启动(以及同样不必要的大约 30 秒的启动延迟)是由称为 的古老遗迹引起的avahi-daemon
。事实证明,每个已从系统中删除的接口都会调用此方法,因此命令/脚本会在 10 秒后超时。
删除上述包修复了一切,现在一切运行顺利。关机只需几秒钟,完全重新启动直到虚拟来宾也启动并运行只需不到两分钟。