我有一台 Centos 6 服务器,升级了几个软件包。据说我可以用它降级它们,yum history undo <packageName>
但我得到的只是downgrade failed
每个软件包的版本。
文档中说,如果存储库中有旧版本,它会降级。所以我的问题是:哪些存储库?显然,我拥有的存储库包含最新版本。我该如何配置这样的功能?
在我的 repolist 中,唯一启用的 repos 是:
Centos-6 - Base
Extra Packages for Enterprise Linux 6 - x86_64
Extra Packages for Enterprise Linux 6 - Testing - x86_64 - Source
CentOS-6 - Extras
CentOS-6 - Updates
谢谢
答案1
笔记
yum history undo
以交易 ID(而非包名)作为参数,如果你输入错误,会清楚地告诉你
Bad transaction ID given
Error: Failed history undo
但既然你收到了Failed to downgrade
消息,我将假设那只是一个打字错误,并且你确实有来自的交易 ID yum history list
。
回答
这可能是由于存档存储库被禁用。例如,CentOS 使用 来CentOS-Vault.repo
保存以前版本的软件包,而 Webtatic 使用webtatic-archive.repo
。
查看所有已安装的(不仅仅是已启用的)存储库:
ls -la /etc/yum.repos.d/
找到适合<archive_repository>.repo
您的失败包的选项,设置enabled=1
并回滚您的事务:
yum history undo <transaction_id>