一、背景介绍
开源软件最早的时候没有软件包和软件包管理器,用户只能下载源码包自行配置 编译 安装。后来linux各发行版本推出了软件包格式和软件包管理程序
Red Hat、Centos使用RPM格式,Debian、Ubuntu使用DEB格式
Deb包的命名格式 package_ver-rev_arch.deb package包名 ver版本 rev修订版本 arch软件包对应硬件平台如amd64、i386
由于开源软件分散开发和相互继承的特点,DEB包之间存在着Depends(存在依赖)、Conflicts(存在冲突)、Recommends(建议安装)这三种依赖关系
Ubuntu还支持最新的软件包安装方式SNAP软件包,这种是Ubuntu未来的软件包格式,采用.snap作为拓展名,目前与DEB方式共存
二、管理要点
软件包管理程序分为前端程序(图形化界面工具)和后端程序(命令行)多数Ubuntu应用程序不止一个DEB软件包组成,安装这些应用时,由软件包管理工具计算依赖关系后从软件仓库下载安装。
需要注意Ubuntu和Debian都使用DEB包软件,但它们的软件仓库并不兼容,Ubuntu和其非官方衍生版本也不通用,即使同是Ubuntu发行版,也需要注意硬件架构。
最新的SNAP不存在依赖关系的问题,但仓库中应用太少。
还有一个软件仓库叫PPA(Personal Package Archives) 个人软件仓库,可以作为官方仓库的扩展
add-apt-repository添加PPA软件仓库,成功添加后需要更新本地软件仓库列表。
三、后端自动化软件包管理工具
1.使用apt-cache apt-get安装一个软件之前,需要知道默认