自制RPM的Yum安装出错

5

我正在尝试使用"yum install my.rpm"安装某个东西。

问题在于,我遇到了以下错误:

TypeError: an integer is required
error: python callback <bound method RPMTransaction.callback of <yum.rpmtrans.RPMTransaction instance at 0x013e3f8>> failed, aborting!

这是什么意思?我打开了yum install的冗长模式,但无法理解任何内容。这是RHEL 6.1操作系统。
谢谢。

你能发布一下你使用的规格文件吗? - gogators
我不能发布规范文件 - 你在里面寻找什么特别的东西吗? - Derek
当您运行“rpm -Uvh my.rpm”时会发生什么?另外,“rpm -qp --scripts my.rpm”和“rpm -qip my.rpm”的输出是什么? - gogators
你能解决这个问题吗?我今天也遇到了同样的问题。 - Aaron Copley
我解决了(对我来说)。我正在使用sudo从一个root-squash挂载的NFS家目录安装软件包...我将其移动到/tmp并成功安装。你的情况可能会有所不同。 - Aaron Copley
2个回答

8
如果在安装软件包时,rpm无法访问文件,它会抛出此错误。例如,如果您的rpm位于具有"root_squash"指令的NFS共享中,并尝试安装,则由于root在尝试访问文件时将不被允许,因此安装将失败并抛出此确切错误。如果这是您的情况,那么先将rpm放入类似于"/tmp"的目录中,然后重新尝试将能够解决问题。

1
我曾经遇到过这个问题,而这个答案解决了我的问题。这样一个晦涩的错误信息... - dbazile

-1

使用yum安装rpm文件,需要使用localinstall命令:

localinstall用于安装一组本地rpm文件。如果需要,将使用已启用的存储库来解决依赖关系。请注意,如果给定文件名,则install命令将执行本地安装。

例如,“yum localinstall my.rpm”。但我认为您的spec文件也存在问题。


如果给定文件名,则安装命令会进行本地安装。 - Derek
你不需要使用“localinstall”命令,因为yum会自动识别。 - Petter H

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接