我正在使用 Fedora 15,每次我尝试使用 yum 安装某些东西时,yum 都会尝试更新存储库数据库。
对于大多数人来说,这很棒而且很方便,但我的网速非常慢(嗯,有点慢,大概 1 Mbps),更新需要一分钟左右。数据库并不大(我的所有存储库都超过 2 mb),但加起来也不少。
禁用此自动数据库更新的最佳方法是什么?我习惯使用 Ubuntu 和 apt,必须手动告诉 apt 更新数据库。我想我可以为 Fedora 安装 apt,但我想知道是否有可以更改的配置设置。
答案1
传递-C
给 yum 将告诉它仅使用当前缓存中的元数据。请注意,如果它需要的元数据当前不在缓存中,或者来自各个存储库的元数据不同步,这将导致操作失败。
答案2
“... 可以在某个配置文件中设置吗?每次都传递 -C 可能会很乏味。...”
更新 YUM 配置文件并将metadata_expire
变量设置为更高的值(默认值为 90 分钟)。然后,您可以yum makecache
根据需要使用命令手动更新元数据。
答案3
以下是我的回答:https://unix.stackexchange.com/a/212278/56487
临时解决方案:
使用-C
标志:
sudo yum install foobar -C
永久解决方案:
使用metadata_expire
你的yum配置文件来控制这一点。
编辑/etc/yum.conf
并设置
metadata_expire=15d
您可以使用日、时或分配置时间天、小时或分钟。
奖励:这里是文档:
metadata_expire 是元数据过期的时间(以秒为单位)。因此,如果当前下载的元数据少于这么多秒,那么 yum 将不会更新存储库的元数据。如果您发现 yum 下载更新信息的频率不如您希望的那样高,请降低此选项的值。您还可以通过分别附加 ad、h 或 m,将默认的秒数更改为天数、小时数或分钟数。默认值为 6 小时,以配合每小时运行一次的 yum-updatesd。也可以使用单词“never”,表示元数据永不过期。请注意,使用 metalink 文件时,由于验证的原因,metalink 必须始终比存储库的元数据更新,因此此超时也适用于 metalink 文件。还请注意,“never”不会覆盖“yum clean expire-cache”