如何在不停机的情况下重置网络管理器?

如何在不停机的情况下重置网络管理器?

我的 WiFi 连接不稳定,带宽经常达到 0 而不会真正断开连接(已连接但没有数据传输)。通过以下方式重置网络管理器

sudo service network-manager restart

完美解决了这个问题。但是,我有两个问题:

  1. 如何在不停机的情况下重置网络管理器?使用上述命令,任何正在进行的下载都将被中断。重置时是否可以保留当前连接?
  2. 我如何编写一个 bash 脚本来定期检查网络连接并在没有数据传输时重置它?

我使用 Ubuntu 20.04。

答案1

重新启动网络管理器时,所有连接都会断开,因此无法避免停机。但是,您可以连接到 LAN,使用 iface 配置 LAN。这可能会让您在重新启动网络管理器时保持连接。如果没有,您可以先配置静态路由以将所有流量转移到 LAN。

在此处阅读有关 iface 及其配置方法/etc/network/interfaces网络配置 - Debian Wiki

在此处了解有关将流量路由到特定网络接口的信息: 仅通过 eth0 路由特定的内联网流量;其他所有流量均通过 wlan0

希望这有帮助。

答案2

其他人提供的信息/答案是正确的,您无法重置 NM 并保持连接。您必须解决问题的根本原因。

我发现许多与 Wifi 相关的问题可以通过禁用电源管理来解决。

以下是我的做法:

创建:/etc/network/if-up.d/wifi-powerman-off
启用:chmod +x /etc/network/if-up.d/wifi-powerman-off

替换接口名称

#!/bin/sh

IWCONFIG=/sbin/iwconfig
WLAN_IFACE=<<interface name>>

if [ ! -x $IWCONFIG ]; then
    exit 1
fi

if [ "$IFACE" = $WLAN_IFACE ]; then
    $IWCONFIG $IFACE power off
fi

答案3

这是不可能的,如果你破坏或将接口置于关闭状态,连接也会关闭。

重新启动操作,关闭接口,然后重新启动。

如果您能想到的唯一解决方法是重置网络接口,那么您就没有方法实现您的目标。

我对您的建议是尝试调试连接并了解为什么附加此内容,但在不关闭连接的情况下重新启动网络是不可能的。

答案4

如果已经断网,那么你其实没什么可失去的,而且即使断网,大多数设备也会暂停,直到它们再次恢复 wifi

编辑:下载将暂停,直到重新连接,所以它们会停止一会儿然后恢复,至于脚本我不知道

相关内容