Skip to content
← 返回Linux列表
命令与系统观察

apt 工具使用(Linux) ​

查询软件包与文件归属 ​

apt-cache(Linux) · Debian 和 Ubuntu 的包查询工具 ​

更多信息:https://manned.org/apt-cache。

  • 在当前的软件源中查找一个软件包:
bash
apt-cache search {{软件包}}
  • 显示指定软件包的相关信息:
bash
apt-cache show {{软件包}}
  • 查看一个软件包是否安装或是否为最新:
bash
apt-cache policy {{软件包}}
  • 显示一个软件包的依赖项:
bash
apt-cache depends {{软件包}}
  • 列出依赖指定软件包的所有软件包:
bash
apt-cache rdepends {{软件包}}

apt-file(Linux) · 在 APT 软件包中查找文件,其中也包括未安装的软件 ​

更多信息:https://manned.org/apt-file。

  • 更新元数据的数据库:
bash
sudo apt update
  • 查找包含指定文件或路径的软件包:
bash
apt-file {{[find|search]}} {{文件路径}}
  • 列出指定包的内容:
bash
apt-file list {{软件包名}}
  • 查找符合给定 pattern 中regex式的软件包:
bash
apt-file {{[find|search]}} {{[-x|--regexp]}} {{正则表达式}}

安装、更新与移除软件包 ​

apt(Linux) · 基于 Debian 的发行版上的软件包管理工具 ​

在 Ubuntu 16.04 及之后版本推荐用它代替 apt-get。 更多信息:https://manned.org/apt.8。

  • 更新可用软件包及其版本列表(推荐在运行其他 APT 命令前首先运行该命令):
bash
sudo apt update
  • 查找指定软件包:
bash
apt search {{软件包}}
  • 显示关于指定软件包的信息:
bash
apt show {{软件包}}
  • 安装指定软件包或将指定软件包更新到最新版本:
bash
sudo apt install {{软件包}}
  • 移除指定软件包(使用 purge 同时移除其配置文件):
bash
sudo apt remove {{软件包}}
  • 将所有已安装软件包更新到最新可用版本:
bash
sudo apt upgrade
  • 列出所有软件包:
bash
apt list
  • 列出已安装的软件包:
bash
apt list {{[-i|--installed]}}

apt install(Linux) · 用于 Debian 系发行版的软件包安装工具 ​

更多信息:https://manned.org/apt.8。

  • 安装软件包或将其更新至最新版本:
bash
sudo apt install {{软件包}}
  • 在安装或更新过程中显示详细的软件包版本信息:
bash
sudo apt install {{[-V|--verbose-versions]}} {{软件包}}

apt-get(Linux) · Debian 和 Ubuntu 的软件包管理工具 ​

使用 apt-cache 查找包。 更多信息:https://manned.org/apt-get.8。

  • 更新可用软件包及其版本列表(推荐在其他 apt-get 命令运行之前使用):
bash
sudo apt-get update
  • 安装一个软件包或更新到最新版本:
bash
sudo apt-get install {{软件包}}
  • 移除一个软件包:
bash
sudo apt-get remove {{软件包}}
  • 移除一个软件包及其配置文件:
bash
sudo apt-get purge {{软件包}}
  • 升级所有已安装软件包到最新版本:
bash
sudo apt-get upgrade
  • 清理缓存中已无法从当前源下载、通常已过时的 .deb 包:
bash
sudo apt-get autoclean
  • 移除所有不再需要的软件包:
bash
sudo apt-get autoremove
  • 升级已安装的软件包(类似于 upgrade),移除过时的软件包并安装额外的软件包以满足新的依赖:
bash
sudo apt-get dist-upgrade

管理密钥与软件包状态 ​

历史兼容:apt-key 已弃用,新源应按发行版文档使用独立 keyring 与 Signed-By;下面保留旧用法,不能作为新系统配置步骤。参见Debian 手册。

apt-key(Linux) · Debian 和 Ubuntu 上的 APT 软件包管理器的密钥管理工具 ​

更多信息:https://manned.org/apt-key。

  • 列出可信密钥:
bash
apt-key list
  • 向可信密钥库中添加一个密钥:
bash
apt-key add {{密钥文件.asc}}
  • 从可信密钥库中移除一个密钥:
bash
apt-key del {{密钥 id}}
  • 向可信密钥库中添加一个远程密钥:
bash
wget {{[-qO|--quiet --output-document]}} - {{https://host.tld/filename.key}} | apt-key add -
  • 指定密钥 ID, 从密钥服务器中添加一个密钥:
bash
apt-key adv --keyserver {{pgp.mit.edu}} --recv {{密钥 id}}

apt-mark(Linux) · 修改已安装软件包状态的工具 ​

更多信息:https://manned.org/apt-mark。

  • 将一个软件包标记为自动安装:
bash
sudo apt-mark auto {{软件包名}}
  • 将一个软件包保持在当前版本,防止对其更新:
bash
sudo apt-mark hold {{软件包名}}
  • 允许对一个软件包更新:
bash
sudo apt-mark unhold {{软件包名}}
  • 列出手动安装的软件包:
bash
apt-mark showmanual
  • 列出保持当前版本而不更新的软件包:
bash
apt-mark showhold

备份与恢复软件包配置 ​

apt-clone(Linux) · 克隆/备份/恢复基于 Debian 系统的软件包状态 ​

更多信息:https://github.com/mvo5/apt-clone。

  • 将当前系统的软件包状态克隆到指定目录:
bash
apt-clone clone {{路径/到/目录}}
  • 创建克隆文件(.tar.gz)用于备份:
bash
apt-clone clone --destination {{路径/到/备份文件.tar.gz}}
  • 从克隆文件恢复软件包状态:
bash
apt-clone restore {{路径/到/备份文件.tar.gz}}
  • 显示克隆文件的信息(如发行版、架构等):
bash
apt-clone info {{路径/到/备份文件.tar.gz}}
  • 检查克隆文件是否可以在当前系统上恢复:
bash
apt-clone restore {{路径/到/备份文件.tar.gz}} --destination {{路径/到/恢复目录}}

示例整理自 tldr-pages,作者为 tldr-pages team and contributors,遵循 CC BY 4.0。

继续阅读