Lui*_*ado 7 update-manager package-management
大多数情况下,当我更新系统时,Update Manager 会从列表中下载整个软件包。即使包只更改了几行。我的意思是,对于仅更改了 2KB 行的 4MB 包,Update Manager 会下载整个 4MB。对于我的连接,这很糟糕,因为它需要很长时间(请记住,我大部分时间都在 10KB 到 50KB 之间下载)。由于有几个大包,我们可以讨论 100MB 包中的 2KB 更改,即使我已经在 24 小时前下载了它们,我也必须从头开始下载。
那么当所有改变的只是一小部分时,为什么缓存管理器需要再次下载完整的包。更重要的是,有没有一种方法可以告诉它验证源包以查看发生了什么变化并安全地仅下载修改后的部分?
我要补充,这是apt-get,aptitude和synaptic也。它们都以相同的方式工作,当包的 50 行发生变化时,我必须下载整个内容。有没有更有效的更新方式、配置、参数?
恐怕这不是基于 Debian 的系统的功能。STATUS_ACCESS_DENIED 关于完整性检查是正确的。gpg 密钥存储在存储库中。发布文件存储在存储库中并经过签名。这些发布文件包含各种包文件的校验和,其中包含包列表。每个包描述都包含每个组件作为一个整体的校验和。
Debian 已经apt-get通过使用包差异来减少所需的带宽,但他们似乎并没有减少执行apt-get upgrade,所需的带宽apt-get update(不是包本身,只有包文件)。有人告诉我 Ubuntu 不支持这个。有关说明,请参阅http://www.debian-administration.org/articles/439
您可能对 Exherbo 或 Funtoo 感兴趣。请参阅https://unix.stackexchange.com/questions/36357/git-based-package-manager-installer-for-linux。在创建 debian 项目时,Git 并不存在。它对单个对象进行签名并保留一系列校验和以确保完整性。