如何阻止 Fedora 检查更新?

如何阻止 Fedora 检查更新?

大多数时候,当我将笔记本电脑或台式机(Fedora 26 和 Gnome 3.24)连接到网络时,初始流量很大,通常在 80 MB 到 120 MB 之间。通常(但并非总是如此)之后会出现一个 Gnome 弹出窗口,通知我可以安装更新。这让我怀疑流量来自检查更新。

如何防止这种流量的发生?我经常只能通过将手机连接到任意一台计算机来访问互联网,而这种网络使用浪费了按流量计费的蜂窝数据。

我在某处阅读执行以下命令以防止检查更新:

sudo systemctl disable dnf-makecache.service
sudo systemctl disable dnf-makecache.timer

但这并没有消除这个问题。

答案1

只需以“普通”用户身份禁用,而不是 root、su 或 sudo:

gsettings set org.gnome.software download-updates false

答案2

这是一种拼凑,而不是真正的解决方案;但是,它解决了我的问题。如果有人发布更好的解决方案,我会接受。由于我不知道我的机器上的哪些程序正在发起流量,因此我决定阻止它们连接到的 IP 地址。

这些是我采取的步骤:

  • 安装Wireshark
  • 在 Wireshark 菜单的“查看 | 名称解析”下,选中“解析网络地址”。这有助于稍后查找与域名关联的所有 IP 地址。
  • 使用 Wireshark 成功捕获不需要的网络流量,并记下源列和目标列中显示的域。
  • 对于每个域,例如example.com,执行命令host example.com。这将列出解析到该域名的所有 IPv4 和 IPv6 地址,因此这些都是需要阻止的地址。
  • 对于每个 IPv4 地址foo,以 root 身份运行iptables -I INPUT -s foo -j DROP
  • 对于每个 IPv6 地址bar,以 root 身份运行ip6tables -I INPUT -s bar -j DROP

要解除对地址的阻止,请以 root 身份运行iptables -D INPUT -s foo -j DROP或者ip6tables -D INPUT -s bar -j DROP如果该地址是 IPv6 地址。或者,只需重新启动计算机即可解锁地址 - iptables 命令的效果不会在重新启动后持续存在。为了方便起见,我建议将阻止和解除阻止地址的命令收集到两个 shell 脚本中。

在我的具体情况下,我发现我的桌面正在连接到

admin.fedoraproject.org
wildcard.fedoraproject.org
dl.l.google.com
mirror.uoregon.edu

前两个域似乎用于选择要连接的 Fedora 存储库的最佳镜像,Google 域可能来自检查 Chrome 的更新,最后一个域负责大部分流量,是镜子Fedora 26 的版本。这证实了我的猜测,即流量来自检查软件更新。到目前为止,我已经使用这个解决方案一天并取得成功。

相关内容