我为 RHEL 5.6 创建了存储库。我已经删除了 RHEL 5.2 的现有存储库。
我运行了以下命令:
yum clean all
yum clean metadata
然后,
yum list all
它列出了所有包。
但是当我输入 YUM UPDATE 时。表明
Setting up Update Process
Setting up repositories
rhel-local 100% |=========================| 951 B 00:0
Reading repository metadata in from local files
primary.xml.gz 100% |=========================| 1.1 MB 00:0
################################################## 3229/3229
Setting up Update Process
Setting up repositories
Reading repository metadata in from local files
这就是大家。 YUM UPDATE 没有进一步回复。
知道为什么 yum 会卡住吗?
答案1
您还可以重建 RPM 数据库。
yum clean all
rpm --rebuilddb
答案2
就我而言,我有一个 RPM 数据库锁,导致 yum 卡住了。
运行strace yum --verbose --noplugins info
会卡在:
open("/var/lib/rpm/.dbenv.lock", O_RDWR|O_CREAT, 0644) = 5
umask(022) = 022
fcntl(5, F_SETLKW, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}Killed
为了解决这个问题,我以 root 身份运行:
rm /var/lib/rpm/.dbenv.lock
答案3
如果另一个进程已经在运行或者系统上维护的yum
元数据已损坏,通常会发生这种情况。yum
对于第一个问题,我通常会终止任何现有的 yum 进程,然后运行此命令yum-complete-transaction
,这应该允许 yum 在自身之后清理 yup。
对于第二个问题,我通常必须运行 ayum clean all
来删除所有元数据和包,然后yum update
正常运行 a 。
有时我也会运行此命令package-cleanup <options>
来清理 RPM 数据库的不同问题:
清理任何重复的包(扫描本地 RPM 数据库中的重复项并清理旧版本)
package-cleanup --cleandupes
扫描问题(列出本地 RPM 数据库中的依赖性问题。如果发现任何问题,它将以退出代码 1 退出)
package-cleanup --problems
列出孤儿名单。 (列出当前配置的存储库中不可用的已安装软件包。这与 相同
yum list extras
,它可以提供更好的输出)package-cleanup --orphans
答案4
我在 /var/log/messages 中发现了 iscsi 错误消息。然后我停止了 iscsi 和 iscid 守护进程。之后 yum 完成更新过程。