在升级过程中,在实际下载软件包之前,DNF/YUM 下载什么?

在升级过程中,在实际下载软件包之前,DNF/YUM 下载什么?

在 的开头dnf upgrade,dnf 显示了某些存储库的下载量(MB)。例如,对于下面的 Visual Studio Code,它下载了约 10MB

$ sudo dnf upgrade
Fedora 33 - x86_64 - Updates                    7.8 kB/s |  15 kB     00:01    
Fedora 33 - x86_64 - Updates                    166 kB/s | 2.3 MB     00:13    
RPM Fusion for Fedora 33 - Free - Updates       2.0 kB/s | 2.8 kB     00:01    
skype (stable)                                  2.1 kB/s | 2.9 kB     00:01    
Visual Studio Code                              2.8 kB/s | 3.0 kB     00:01    
Visual Studio Code                               90 kB/s |  10 MB     01:59    

这是在 y/N 提示之前,即实际的更新包尚未开始下载。

只是好奇,这个下载包含什么?

答案1

这是存储库的元数据,用于了解与您可以访问的包相关的所有信息。它通常是一个名为 repodata.xml 的文件,可以压缩,其中有大量有关可用包的信息,包括这些包的版本和可用包组。

有了这些信息,DNF/YUM 就能够知道您是否有可用的更新,或者您尝试安装的软件包是否存在,以及安装每个软件包需要哪些依赖项。

答案2

DNF 正在下载可用软件包列表,以确定是否有可用的更新和/或新软件包。

答案3

如果您来自 APT/DEB 世界,那么您需要apt update手动运行,这样apt upgrade/apt install才有意义。

Yum/DNF 根据上次软件包数据库更新的时间戳自动执行此操作。

这个下载操作通常每隔几个小时发生一次(我不能准确地说),所以如果你dnf在相对较短的时间内连续运行几次,它不会一次又一次地下载包数据库。

相关内容