文章目录
一.apt介绍
apt[Advanced Package Tool]是一款适用于Unix和Linux系统的软件包管理工具.。最初于1998年发布,用于检索应用程序并将其加载到Debian Linux系统。apt是一个命令行实用程序,用于在Ubuntu、Debian和相关Linux发行版上安装、更新、删除和管理deb软件包。
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使用方式
apt-get [选项] [命令] [包名]
apt-get用于包的安装,卸载与更新
其中,选项包括如下:
-h 帮助文件。
-q 输出到日志 - 无进展指示
-qq 不输出信息,错误除外
-d 仅下载 - 不安装或解压归档文件
-s 不实际安装。模拟执行命令
-y 在需要确认的场景中回应 yes
-f 尝试修正系统依赖损坏处
-m 如果归档无法定位,尝试继续
-u 同时显示更新软件包的列表
-b 获取源码包后编译
-V 显示详细的版本号
-c=? 阅读此配置文件
-o=? 设置自定的配置选项,如 -o dir::cache=/tmp
命令包括如下:
update 重新获取软件包列表
upgrade 进行更新
install 安装新的软件包
remove 移除软件包
autoremove 自动移除全部不使用的软件包
purge 移除软件包和配置文件
source 下载源码档案
build-dep 为源码包配置编译依赖
dist-upgrade 发行版升级
dselect-upgrade 依照 dselect 的选择更新
clean 清除下载的归档文件
autoclean 清除旧的的已下载的归档文件
check 检验是否有损坏的依赖
apt-cache [命令] [包名]
apt-cache用于显示 APT 内部数据库里的多种信息
其中,命令包括如下:
search 搜索包
show 获取抱的相关信息,如说明,大小,版本等
depends 包的相关依赖有哪些
rdepends 依赖此包的包有哪些
三.常用命令
使用apt更新软件包数据库
# 运行此命令时,您将看到从各种服务器检索到的软件包信息
sudo apt-get update
使用apt升级已安装的软件包
# 这将显示要升级的软件包数量和所有要升级的软件包
sudo apt-get upgrade
使用apt完全升级已安装的软件包
# 升级和完全升级的区别在于,如果需要升级整个系统,后者将删除已安装的软件包
sudo apt-get full-upgrade
使用apt安装软件包
sudo apt install package_name
使用apt移除软件包
sudo apt remove package1 package2
使用apt生成软件包列表
sudo apt list
使用apt搜索软件包
sudo apt search package_name
使用apt显示软件包信息
sudo apt show package_name
四.安装后的软件位置
使用apt-get安装的包总共有以下5种:
- 下载的软件的存放位置:/var/cache/apt/archives
- 安装后软件的默认位置:/usr/share
- 可执行文件位置:/usr/bin
- 配置文件位置:/etc
- lib文件位置:/usr/lib