【问题标题】:sudo apt-get upgrade gives an error: ibverbs-providers:i386 on ubuntu 18.04sudo apt-get upgrade 给出错误:ibverbs-providers:i386 on ubuntu 18.04
【发布时间】:2020-02-20 06:45:58
【问题描述】:

我使用的是 Ubuntu 18.04。当我尝试时

sudo apt-get upgrade

我收到以下错误:

dpkg: dependency problems prevent configuration of ibverbs-providers:i386:
 ibverbs-providers:amd64 (17.1-1ubuntu0.2) breaks libcxgb3-1 and is installed.
  ibverbs-providers:i386 (17.1-1ubuntu0.2) provides libcxgb3-1.
 ibverbs-providers:amd64 (17.1-1ubuntu0.2) breaks libipathverbs1 and is installed.
  ibverbs-providers:i386 (17.1-1ubuntu0.2) provides libipathverbs1.
 ibverbs-providers:amd64 (17.1-1ubuntu0.2) breaks libmlx4-1 and is installed.
  ibverbs-providers:i386 (17.1-1ubuntu0.2) provides libmlx4-1.
 ibverbs-providers:amd64 (17.1-1ubuntu0.2) breaks libmlx5-1 and is installed.
  ibverbs-providers:i386 (17.1-1ubuntu0.2) provides libmlx5-1.
 ibverbs-providers:amd64 (17.1-1ubuntu0.2) breaks libmthca1 and is installed.
  ibverbs-providers:i386 (17.1-1ubuntu0.2) provides libmthca1.
 ibverbs-providers:amd64 (17.1-1ubuntu0.2) breaks libnes1 and is installed.
  ibverbs-providers:i386 (17.1-1ubuntu0.2) provides libnes1.

 dpkg: error processing package ibverbs-providers:i386 (--configure):
 dependencNo apport report written because the error message indicates its a followup error from a previous failure.
                                                                                                                    y problems - leaving unconfigured
Errors were encountered while processing:
 ibverbs-providers:i386
E: Sub-process /usr/bin/dpkg returned an error code (1)

我无法升级任何东西。

【问题讨论】:

  • 我通过删除 ibverbs-providers 解决了这个问题,然后 apt autoremove 删除了未使用的依赖项,然后重新安装它。如果任何其他包依赖于它们,它们将不会被删除。

标签: ubuntu upgrade ubuntu-18.04 dpkg


【解决方案1】:

您的ibverbs-providers:i386 软件包似乎有一个新版本,它破坏了您已安装的多个软件包。它似乎正在破坏的软件包是其自身的 64 位版本,不幸的是,这非常常见且令人讨厌。

作为临时解决方案,您可以使用 apt 的 hold 选项来不升级包而不更新它

sudo apt-mark hold ibverbs-providers:i386

您可以从 ubuntu 的Pinning guide 了解更多关于保持的信息。

但是,我建议您尝试解决此依赖问题,尝试使用更现代/用户友好的工具,例如 apt,或者如果这不起作用 aptitude(您必须安装 aptitude)。 apt-get 是对 dpkg 的低级抽象,并不是真正供人类使用的(尽管包括我在内的许多人都有使用它的习惯,因为它永远是 debian 的默认设置)。 apt 是一个更高级别的管理器,它将执行诸如尝试解决依赖项和错误之类的工作,而 aptitude 是一个具有终端 GUI 和许多“智能”功能的完整包管理器。

根据我的经验,aptitude 会解决这个问题,apt 可能会解决这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-11
    • 2023-03-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多