APT为Advanced Packaging Tools的缩写,是Debian及其派生发行版的软件包管理器。
APT可以自动下载,配置,安装二进制或者源代码格式的软件包,因此简化了Unix系统上管理软件的过程。
APT最早被设计成dpkg的前端,用来处理deb格式的软件包,现在经过APT-RPM组织修改,APT已经可以安装在支持RPM的系统管理RPM包。
APT是一个客户/服务器系统。在服务器上先复制所有DEB包(DEB是Debian软件包格式的文件扩展名),然后用APT的分析工具(genbasedir)根据每个DEB 包的包头(Header)信息对所有的DEB包进行分析,并将该分析结果记录在一个文件中,这个文件称为DEB 索引清单,APT服务器的DEB索引清单置于base文件夹内。一旦APT 服务器内的DEB有所变动,一定要使用genbasedir产生新的DEB索引清单。客户端在进行安装或升级时先要查询DEB索引清单,从而可以获知所有具有依赖关系的软件包,并一同下载到客户端以便安装。当客户端需要安装、升级或删除某个软件包时,客户端计算机取得DEB索引清单压缩文件后,会将其解压置放于
/var/state/apt/lists/,而客户端使用apt-get install或apt-get upgrade命令的时候,就会将这个文件夹内的数据和客户端计算机内的DEB数据库比对,知道哪些DEB已安装、未安装或是可以升级的。
apt-get
apt-get 是一个下载安装软件包的简单命令行接口,最常用的命令是update(更新)和install(安装)。
用法:
apt-get [选项] 命令
apt-get [选项] install|remove pkg1 [pkg2 …]
apt-get [选项] source pkg1 [pkg2 …]
| 命令 | 释义 |
|---|---|
| update | 重新获取软件包列表 |
| upgrade | 进行更新 |
| install | 安装新的软件包 |
| remove | 移除软件包 |
| autoremove | 自动移除全部不使用的软件包 |
| purge | 移除软件包和配置文件 |
| source | 下载源码档案 |
| build-dep | 为源码包配置编译依赖 |
| dist-upgrade | 发行版升级, |
| dselect-upgrade | 依照 |
| clean | 清除下载的归档文件 |
| autoclean | 清除旧的的已下载的归档文件 |
| check | 检验是否有损坏的依赖 |
| 选项 | 释义 |
|---|---|
| -h | 本帮助文件 |
| -q | 输出到日志,无进展指示 |
| 不输出信息,错误除外 | |
| -d | 仅下载,不安装或解压归档文件 |
| -s | 不实际安装。模拟执行命令 |
| -y | 假定对所有的询问选是,不提示 |
| -f | 尝试修正系统依赖损坏处 |
| -m | 如果归档无法定位,尝试继续 |
| -u | 同时显示更新软件包的列表 |
| -b | 获取源码包后编译 |
| -V | 显示详细的版本号 |
| -c=? | 阅读此配置文件 |
| -o=? | 设置自定的配置选项,如 -o dir::cache=/tmp |
例子:
1 | 搜索包 |
apt-key
apt-key是Debian软件包的安全管理工具。每个发布的deb包,都是通过密钥认证的,apt-key用来管理密钥。
用法:apt-key [–keyring file][command][arguments]
| 参数 | 释义 |
|---|---|
| apt-key add |
把下载的key添加到本地trusted数据库中 |
| apt-key del |
通过keyid删除key |
| apt-key export |
通过keyid导出key |
| apt-key exportall | 导出本地trusted数据库中的所有key |
| apt-key update | 通过key包来更新key |
| apt-key net-update | 通过网络更新key |
| apt-key list | 列出所有的key |
| apt-key finger | 列出所有验证指纹 |
| apt-key adv | 设置key的高级配置 |