![如何解决 RHEL 6.6 上 bash 和 cpio 未满足的依赖关系问题?](https://linux22.com/image/101699/%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%20RHEL%206.6%20%E4%B8%8A%20bash%20%E5%92%8C%20cpio%20%E6%9C%AA%E6%BB%A1%E8%B6%B3%E7%9A%84%E4%BE%9D%E8%B5%96%E5%85%B3%E7%B3%BB%E9%97%AE%E9%A2%98%EF%BC%9F.png)
我在 RHEL 6.6 服务器上安装了许多软件包。我正在尝试安装 createrepo 和 createrepo 本身的依赖项。我想要一个 yum 存储库。当我rpm -ivh *.rpm
在超过 50 个 .rpm 的目录中使用时,我收到以下失败消息:
/usr/bin/bash is needed by glibc-common-2.17-157.el7_3.1x86_64
/usr/bin/cpio is needed by kmod-20-9.el7.x86_64
我安装了 bash 和 cpio 软件包来尝试解决这个问题。对于这些错误我该怎么办?我以为我拥有所有的依赖关系。
使用 yum localinstall 命令也失败。我尝试创建 cpio 和 bash 文件到错误消息中引用的位置的链接(使用 ln -s)。我也尝试将 cpio 和 bash 文件复制到这些位置。但这也不起作用。错误不断发生。
答案1
您问题的答案是您应该安装提供这些功能的软件包,这些软件包应该与您当前的版本兼容。目前您还没有安装提供和的软件包(或者您通过 启动的事务中的软件包rpm -ivh *.rpm
)。如果您安装了合适的软件包,那么 rpm 将不会显示这些依赖性错误。您可以通过以下方式查询哪个已安装的软件包提供了这些功能/usr/bin/bash
/usr/bin/cpio
rpm -q --whatprovides /usr/bin/cpio /usr/bin/bash
与此相关的是,如果您在该位置创建符号链接,它不会影响 rpm 依赖项,因为 rpm 仅通过Provides
已安装软件包的标签进行评估。
在我看来,您的问题来自于您尝试在 el6 服务器上安装 el7 软件包这一事实。