通过 Ubuntu 软件中心和终端安装应用程序有什么区别?

通过 Ubuntu 软件中心和终端安装应用程序有什么区别?

我想问一个非常基本的问题,但我以前从未想过。那么,当有人从终端安装应用程序时,他必须先添加存储库,对吗?另一方面,当有人从 Ubuntu 软件中心安装应用程序时,是否会自动添加存储库?

我问这些问题是为了弄清楚:当我运行更新然后升级时,这个应用程序会升级吗?两种选择的结果是否相同?

答案1

这不太准确,但也差不多。

Ubuntu 软件中心是一组存储库。存储库中已包含许多应用程序。要安装这些应用程序,您无需添加新的存储库。

当安装具有自己的存储库(virtualbox)的应用程序时,如果要使用命令行 apt-get 或软件中心,则需要添加存储库、添加密钥,然后更新(apt-get update)。还有一些其他存储库,其中包含大量应用程序,例如播放德布他们的资料库里有大量的游戏。

之后,你可以使用 GUI 软件中心或命令行 apt-get install xxx 从存储库进行安装

您还可以使用 dpkg 安装 .deb 文件,或者使用二进制安装程序进行其他安装,甚至只是解压缩二进制文件。

概括:

  • 并非所有应用程序都必须从存储库安装
  • 初始安装时预先配置的存储库中已有数千个应用程序
  • 您可以添加存储库,然后使用 GUI 或命令行从中安装应用程序
  • 您可以使用 .deb 文件、二进制文件或压缩文件来安装不在存储库中的程序
  • 如果可能,当您运行更新和升级命令时,从存储库安装的应用程序将被升级。一个警告是,在发行版升级 11.10 到 12.04 之后(例如)...在这种情况下,您需要重新添加之前添加的任何存储库。

答案2

从软件中心或其他 GUI 安装与从命令行安装之间唯一的真正巨大区别是出现问题时。

在大多数 GUI 中,安装错误消息是隐藏的,它们只会向您显示一条一般性消息,表示安装失败。当您从命令行执行此操作时,您会看到生成的所有消息。通常,这些信息可用于修复问题,或者它会告诉您为什么您可能不想修复它。例如,安装该软件包会破坏或卸载已安装的其他软件包。

有时,软件包安装失败只是因为其依赖项之一未安装(常规安装不会像大多数安装一样自动修复该问题)。发生这种情况时,您通常可以先安装缺少的软件包,然后安装就会成功。

此外,apt-get 还会通知您与您的软件包一起“推荐”的其他相关软件包,以便您可以查找它们并确定是否需要其中的任何一个。

它还会报告以前安装的可能不再需要的任何软件包,并告诉您如何删除它们。

在没有仔细检查所涉及的包的情况下,您不应该在最后两个步骤中添加/删除包,但这通常是安全的。

在 Ubuntu 12.04 中,新安装的应用程序默认会添加到启动器,但这仅适用于使用软件中心安装的应用程序。

答案3

存储库只需添加并启用一次。您可能会看到如下说明:

添加稳定的 Bumblebee 版本 PPA 并使用专有的 NVIDIA 驱动程序安装 Bumblebee:

sudo add-apt-repository ppa:bumblebee/stable
sudo apt-get update
sudo apt-get install bumblebee bumblebee-nvidia

添加存储库只需执行一次。在上面的示例中,bumblebee 程序在默认存储库中不可用,因此您必须启用此第三方存储库(使用该add-apt-repository程序)。

第二行apt-get update,刷新软件包列表以检索有关软件包的最新信息。如果添加了新的存储库,这将通知数据库来自该存储库的新软件包。

第三个命令,apt-get install ...相当于选择一个包进行安装。

Ubuntu 软件中心允许您安装存储库中提供的软件。结果与您使用命令“手动”安装软件包时的结果没有什么不同apt-get install。您仍将从存储库获取更新等。

最后,您可能会看到类似“下载 foo.deb 并使用sudo dpkg -i foo.deb”这样的指令。在这种情况下,除非软件包的作者对系统配置进行了修改(如 Google Chrome),否则您将无法收到升级。

答案4

软件中心是 apt 工具的前端 UI。当您从软件中心安装软件时,它会通过 apt 安装。因此,当您执行 anapt-get update和 aapt-get upgrade时,您将更新从中心安装的软件。此外,如果软件中心必须自动添加存储库,我也将使用 apt,因为正如我所说,软件中心使用 apt。当您使用 安装某些东西时,您apt并不总是必须添加存储库,如果您输入apt-get install vlc它将安装 vlc,但您尚未添加存储库。

相关内容