查找和安装新软件

更新存储库并升级现有软件包后,我们就可以搜索和安装新程序了。

使用 apt search 和 apt show 命令来搜索新软件并探索它们的技术要求。
第一个命令根据特定的搜索词搜索我们已连接到的所有有效存储库:

sudo apt show

例如,要搜索 Web 浏览器,执行以下内容:

sudo apt search "web browser"

要获取有关包类型的更多信息,请执行以下操作:

sudo apt show

例如,chromium-browser 包的 apt show 命令显示了相当多的技术信息:

改为使用 sudo apt-cache show 来获取有关该软件包的更多技术信息。

找到所需软件包的名称后,使用 apt install 命令安装它。
例如,要安装 Chromium-browser 包,执行:

sudo apt install chromium-browser

并且系统会提示我们安装chromium-browser 所依赖的添加软件包。
(如果我们使用了 -y 标志,则该命令将在没有提示的情况下执行。

如何使用 Apt 安装 Ubuntu 软件包

如何更新 Ubuntu Linux 软件包

要更新计算机上的软件包,请使用以下命令:

sudo apt upgrade -y

更新很容易,但有一个问题。
apt 和 apt-get 之间的一个区别是后者支持不同类型的升级。
例如, apt-get update 和 apt-get dist-upgrade 都与 apt upgrade 略有不同:

  • apt-get upgrade :更新包,但默认情况下不删除其他包或者添加新包。相反,如果需要添加或者删除依赖项,升级将失败。
  • apt-get dist-upgrade :更新和删除包的先前版本,包括依赖项。
  • apt upgrade :类似于 apt-get upgrade --with-new-packages 的功能,这是一种说它更新的奇特方式,但不会删除以前的版本,但它会安装新软件包(但不会删除它们),如果这样做是为了满足依赖性。

如果我们可以 apt 删除软件包以满足依赖项,请改用 full-upgrade 选项:

sudo apt full-upgrade -y

关于包管理的说明

在 Microsoft Windows 中,要安装新程序,我们必须下载并执行其安装程序,或者——如果它是“便携式应用程序”——将程序的文件解压缩到文件系统上的某个位置。

然而,Linux 拥有多种安装和管理软件的方法。
用于安装软件的文件通常称为包,包有许多不同的风格。
例如,Ubuntu 使用它来自的 Debian 系列发行版的约定,因此 Ubuntu 软件包以 .DEB 结尾。
但是,Ubuntu 还支持从源代码或者较新的 Snap 包安装和编译等方法。

包管理器充当依赖关系或者包之间相互依赖的网络的交通警察。
有些包需要特定的其他包以及它们自己的包;其他人要求在它们工作之前删除一些包。
APT 和调用它的工具代表我们处理依赖关系,但是我们与这些工具一起使用的特定命令控制它们如何处理依赖关系。

每种类型的包管理框架和每种特定的 Linux 发行版都维护着一个可以在其上运行的软件库。
这些库称为存储库。
尽管默认情况下,每个发行版的包维护者都在包管理工具中包含该发行版的存储库,但独立应用程序(尤其是主要应用程序)来自他们自己的存储库。
要从它们添加软件,我们必须首先将存储库添加到包管理工具中。

如何将 APT 与存储库同步

要在它连接的每个存储库中刷新计算机的软件包索引,请使用 apt update 命令。
这个命令 - 作为一个良好的内务管理,应该始终是我们在进行其他包更改之前调用的第一件事 - 将可用包的本地副本及其版本与存储库的当前状态索引同步。
运行这个:

sudo apt update

Apt 处理更新。
它偶尔会抛出错误,例如丢失安全密钥或者其他错误。
查看命令的输出以确定我们是否遇到任何严重的配置错误。
运行 apt update 的一个好处是,它是对包管理环境状态的快速浏览。

Ubuntu 上的包管理

尽管我们可以自由地使用 GUI 来安装和管理应用程序,但高级用户(以及需要的不仅仅是 GUI 提供的有限选择的人)默认使用与 APT 接口的 shell 程序。

访问 APT 的标准命令 — 直观但容易混淆,称为 apt — 为我们管理大部分工作。
在 Ubuntu 文档中,我们会看到 apt 和 apt-get 之间的区别。
前者针对人机交互进行了优化;后者更直接地与操作系统和 APT 作为框架的内部联系在一起。
为了增加乐趣,名为 aptitude 的包管理实用程序不同于 apt 和 apt-get。
尽管 apt 和 apt-get 之间存在一些语法差异和细微的功能差异,但我们通常可以使用 apt,除非 apt-get 的另外火力可能更有意义(或者如果我们更熟练地使用 Linux 软件包)管理比一般熊)。

无论 shell 程序如何访问 APT,我们都必须使用提升的权限。
因此,我们必须调用 sudo;否则 APT 访问被拒绝:

关于 apt 和 apt-get 的一件很酷的事情?
它们都支持 -y 标志以在任何需要我们确认的提示时自动回答“Y”。
当我们在一段时间内第一次更新环境时,此快捷方式证明很方便,否则可能需要数十次确认某些升级。

整理软件包

其他一些与 apt 相关的命令证明很有帮助:

  • apt reinstall:从存储库源重新安装包,如果我们认为自己破坏了喜欢的程序,则很有用。
  • apt remove :删除包,但保留用户配置的文件。
  • apt purge :删除包以及与其相关的所有关联文件,包括用户配置文件。
  • apt autoremove :删除已作为依赖项安装的软件包,但鉴于它们已过时或者其他软件包已被删除,现在是孤立的。偶尔运行此命令可以恢复一些磁盘空间。

当你安装一个包时,一个扩展名为 .DEB 的文件被下载并放入文件夹 /var/cache/apt/packages。

然后从该文件夹安装该软件包。

使用以下命令清除文件夹 /var/cache/apt/packages 和 /var/cache/apt/packages/partial:

sudo apt-get clean
日期:2020-07-15 11:16:37 来源:oir作者:oir