我正在寻找一个软件包,并dnf search
在从源安装之前查看是否有它,然后开始了一系列系统更新。我终止了该进程,觉得很奇怪,然后跑去dnf info
看看是否可以找到其他信息。它也开始运行更新,尽管它不断询问我导入GPG key
for postgres 是否可以(从 15 开始,然后是 14,然后是 13)。
我以前从未见过这种情况发生。谁能解释一下它的要点,并希望提供我可以阅读更多内容的文档。这是标准行为吗dnf
?
这是从终端窗口复制粘贴的内容:
[nick@nicks-x1 project]$ dnf search valgrind
Copr repo for PyCharm owned by phracek 33 kB/s | 45 kB 00:01
Brave Browser - Beta 24 kB/s | 15 kB 00:00
determining the fastest mirror (144 hosts).. done. [ === ] --- B/s | 0 B --:-- ETA
Fedora 38 - x86_64 2.2 MB/s | 83 MB 00:37
Fedora 38 openh264 (From Cisco) - x86_64 773 B/s | 2.5 kB 00:03
Fedora Modular 38 - x86_64 1.5 MB/s | 2.8 MB 00:01
^CFedora 38 - x86_64 - Updates 0.0 B/s | 0 B 00:00
Error: Failed to download metadata for repo 'updates': Librepo was interrupted by a signal
[nick@nicks-x1 project]$ man dnf
[nick@nicks-x1 project]$ dnf info valgrind
Fedora 38 - x86_64 - Updates 2.2 MB/s | 32 MB 00:14
Fedora Modular 38 - x86_64 - Updates 1.5 MB/s | 2.1 MB 00:01
google-chrome 13 kB/s | 3.6 kB 00:00
pgadmin4 427 B/s | 833 B 00:01
pgadmin4 3.8 MB/s | 3.8 kB 00:00
Importing GPG key 0x210976F2:
答案1
这是正常行为;dnf
是同步其元数据来自配置的存储库。它实际上并没有更新系统上的任何包,只是更新存储库中可用包的信息。
你看不到这个每一个运行时,dnf
因为它会缓存这些数据,并且仅在数据太旧时更新它。缓存超时时间已配置使用metadata_expire
条目在dnf.conf
(以及在存储库元数据中),默认设置为 48h。
您可以通过以下方式避免这种情况dnf -C
:dnf
然后将仅使用其本地缓存的元数据进行操作。