对于 Fedora Workstation 36。关于yum
(是的,我知道它被替换为dnf
) - 我用于yum
学术目的。
要完成操作系统中可用的所有软件包的更新 - 使用命令sudo yum update
- 我想知道是否有必要/强制首先执行该yum check-update
命令。我知道它显示了可用于更新目的的所有新数据,但我不确定是否只做这项工作 - 我的意思是:
例如在 Ubuntu 中,以下内容是强制性的
# [Mandatory] Retrieves all the new data available for the OS
sudo apt update
# [Optional] Shows all the new data available for the OS,
# it depends of the previous command execution
apt list --upgradable
# [Mandatory] Update all the new data available for the OS,
# The first command must be executed before.
sudo apt upgrade
所以我不确定是否sudo yum update
有两份工作 -第一的检索有关所有可用新数据的信息和 第二继续完成更新。因此,请考虑以下 2 个场景:
情况1
sudo yum update
案例2
yum check-update
sudo yum update
Fedora 的正确情况是什么?情况 1 或 2?
笔记我添加了Ubuntu
和apt
标签,以防 Fedora 用户正在使用/学习 Ubuntu。
答案1
不,您不必先运行 yum check-update。如果使用更新命令运行时元数据已过期,Yum(和 DNF)将更新元数据。
存储库元数据中设置了过期时间,这对于存储库来说应该是合理的,因此您通常不需要运行检查更新,除非您只想查看可能需要更新的内容并且不打算实际更新。
答案2
“yum check-update”就像一次预演,只是它不执行任何操作。它仅列出更新后将安装的内核或软件包版本。
它还可以帮助解决访问存储库的问题。因此,如果它是生产服务器,最好在前一天运行“yum check-update”来验证内容。如果没有错误,那么第二天当你真正给服务器打补丁时,很可能会出现顺利的错误。
干杯!
答案3
以下是事情的进展以及为什么现有的回复并不完全正确。
首先,yum*
命令早已被弃用,因为您使用的是dnf
,而不是yum
。
其次,DNF在一段时间后会自动更新其存储库。通常需要 3-4 小时,但我不能确定 - 需要有人检查来源!
然而!我曾经多次遇到过这样的情况:我知道更新已经发布,但 DNF 没有看到/提供更新,因为时间还没有到。
所以,您要寻找的是:
sudo dnf clean expire-cache
说到dnf check-update
- 这是现有答案正确的地方:此命令不会更新存储库,它只是显示可以更新哪些包。