云网牛站
所在位置:首页 > Linux教程 > 使用Apt和Synaptic纠正Ubuntu依赖性错误

使用Apt和Synaptic纠正Ubuntu依赖性错误

2019-07-16 22:11:30作者:晴弈稿源:云网牛站

当用户安装他们通过命令行从Internet下载的第三方DEB软件包时,Ubuntu上的依赖性错误就会发生,并且软件包管理器无法找到在Ubuntu上运行该程序所需的正确依赖软件包,虽然这些问题越来越少,但是由于大多数Ubuntu粉丝都不再使用DEB而转而使用Snap和Flatpak(参考:在Linux系统上安装并使用Flatpak的方法),所以当出现这样的错误时,应该知道处理方案。在本文中,我们将向你展示如何修复Ubuntu上的依赖项错误。注意:虽然本文侧重于修复Ubuntu Linux上的依赖性问题,但我们所涵盖的信息也适用于Linux Mint、Elementary OS、Zorin OS以及任何其他类似Ubuntu的操作系统,如果你使用这些基于Ubuntu的发行版,请参考下面的解决方法。

 

软件依赖简介

软件依赖性是Linux上使用的通用术语,表示给定应用程序正确运行所需的必要程序、库、编解码器和其他项。通常,开发人员通过将这些文件捆绑在包中来处理这些重要文件,但是,有时,开发人员不会捆绑软件依赖项,而是依赖Ubuntu软件源为它们提供。

 

使用Apt纠正依赖性错误

在Ubuntu Linux上纠正依赖错误的最直接的方法是使用默认的包管理器:Apt,要开始校正,请按键盘上的Ctrl+Alt+T或Ctrl+Shift+T打开终端窗口,命令行窗口打开后,使用以下命令修复错误:

sudo apt install -f

在运行上面的安装命令后,Ubuntu的软件包管理器将尝试修复你所面临的依赖性问题,并打印出它将要进行的更改,仔细阅读终端打印出来的屏幕提示,然后,当你完成阅读屏幕提示时,按键盘上的Y继续。

让Apt打包工具安装设置程序所需的各种软件依赖项,或者,如果Apt找不到它需要工作的任何缺少的软件依赖项,它将自动卸载该应用程序,如果是这种情况,请考虑尝试通过其他方式,而不是DEB包来查找应用程序。

 

使用Synaptic纠正依赖性错误

通过Apt和命令行解决依赖性错误通常很有效,当然,还有另一种方式:Synaptic包管理器,参考在Ubuntu上安装Synaptic以查找损坏的软件包及修复损坏的软件包

要了解Ubuntu上的Synaptic包管理器以解决依赖性错误,你需要安装该应用程序,使用Ctrl+Alt+T或Ctrl+Shift+T打开终端窗口,然后,使用以下命令在你的系统上安装该应用程序:

sudo apt install synaptic

注意:也可以通过在Ubuntu软件中心搜索“Synaptic”来安装Synaptic。

在Ubuntu上安装Synaptic软件包管理器后,启动该应用程序,然后输入你的用户密码以访问该应用程序,然后,按照下面的分步说明学习如何使用它解决依赖性错误。

步骤1:在Synaptic软件包管理器中查找“搜索(Search)”按钮,然后选择它以访问应用程序中的搜索功能。

步骤2:在搜索框中键入具有损坏的依赖项的应用程序的名称,例如,如果你已安装Discord DEB软件包,则在搜索框中输入“discord”。

步骤3:在Synaptic中查找缺少依赖项文件的应用程序中的搜索结果,然后使用鼠标选择它。

步骤4:在Synaptic包管理器窗口中找到“编辑(Edit)”菜单,然后单击它以显示其中的选项,菜单打开后,选择“修复损坏的包(Fix Broken Packages)”按钮。

步骤5:找到“Apply”按钮并选择它,以使Synaptic继续使用依赖项解析过程。

使用Apt和Synaptic纠正Ubuntu依赖性错误

修复功能将自动处理所有缺少的软件依赖项,完成此过程后,你的错误就会解决,应用程序就可以使用了。

 

如何避免Ubuntu上的依赖错误

遵循以下简单规则可以轻松避免Ubuntu上的依赖性错误:

仅从官方Ubuntu软件源安装软件,除非你需要,否则不要试图下载随机DEB包,Ubuntu拥有大量免费、开源和专有软件。不应该有任何理由从互联网上下载DEB软件包。(因为很多这些软件包都存在依赖性问题。)

使用Apt和Synaptic纠正Ubuntu依赖性错误

有时需要从Ubuntu软件源之外获取软件,即使安装了大量的Ubuntu应用程序,一些应用程序也会出现问题,如果你需要使用传统Ubuntu软件源中找不到的应用程序,请考虑寻找Snap(参考:在Ubuntu 18.04/Debian上安装和使用Snap的方法)或Flatpak版本,因为它们从不存在依赖性问题,并直接从开发人员那里获得定期更新。

 

相关主题

解释关于AppImage、.snap、.deb、Flatpak的区别

精选文章
热门文章