01-apt-get 简介
1、 简介
apt(Advanced Packaging Tool)是一个在 Debian 和 Ubuntu 中的一个软件包管理工具,apt-get是其中一个命令,用于从指定的源地址下载软件包。
apt 命令提供了查找、安装、升级、删除某一个、一组甚至全部软件包的命令。
1.1、配置文件
早期 apt-get 默认的配置文件为 /etc/apt/apt.conf
,但是当前的 Ubuntu 系统中默认没有这个文件。
如果 /etc/apt/apt.conf
文件存在,apt-get 仍然会读取它。但现在的设计思路是把配置文件分隔后放置在 /etc/apt/apt.conf.d
目录下,这样更容易管理。
2、命令
apt相关的命令有两个,一个是apt、一个是apt-get。
- 简单认为:
apt = apt-get、apt-cache 和 apt-config 中最常用命令选项的集合
- 虽然 apt 与 apt-get 有一些类似的命令选项,但它并不能完全向下兼容 apt-get 命令。也就是说,可以用 apt 替换部分 apt-get 系列命令,但不是全部。
本次主要讲解apt-get命令,可通过apt-get -h或者man apt-get查看操作手册。
1 |
|
2.1、查询包
通过查询功能,我们可以知道自己安装了哪些包,想要安装的包是否在镜像源里存在,以及是否有合适的版本。
1 |
|
2.2、apt-get install
安装包
1 |
|
常用选项
-f,-fix-breesk
: 修复或者尝试纠正损坏的依赖项。-m,-ignore-missing, -fix-missing
: 忽略丢失的包。-y,-yes,-assume-yes
:自动选择是以提示。-force-yes
: 在安装/升级或者删除包时强制yes。这是一个危险操作,使用后如果apt做一些潜在危害系统的操作也不会有提示。只有特殊情况下才应该使用。该选项有可能破坏掉你的系统。-reinstall
: 重新安装已安装的包。
指定版本
- 通过指定具体版本和对应的镜像源安装想要的版本,样例如下
- apt-get install gnupg/buster
- apt-get install monkeysphere=0.43-3
2.3、apt-get remove
删除包
1 |
|
2.4、apt-get clean
清理无用包
clean 命令清除在本地库中检索到的包。它从 /var/cache/apt/archives/
和 /var/cache/apt/archives/partial/
目录删除除锁文件之外的所有内容
autoclean 与 clean 命令类似,autoclean 命令清除检索到的包文件的本地存储库。不同之处在于,它只删除不能再下载的软件包文件,而且这些文件在很大程度上是无用的。这允许长时间维护缓存,而不至于大小失控。
1 |
|
2.5、apt-get update
更新源文件
update 命令用于重新同步包索引文件,/etc/apt/sources.list
文件中的配置指定了包索引文件的来源。更新了包索引文件后就可以得到可用的包的更新信息和新的包信息。这样我们本地就有了这样的信息:有哪些软件的哪些版本可以从什么地方(源)安装。
update 命令应该总是在安装或升级包之前执行。,
1 |
|
2.6、 apt-get upgrade
升级所有包
upgrade 命令用于从 /etc/apt/sources.list
中列出的源安装系统上当前安装的所有包的最新版本。在任何情况下,当前安装的软件包都不会被删除,尚未安装的软件包也不会被检索和安装。如果当前安装的包的新版本不能在不更改另一个包的安装状态的情况下升级,则将保留当前版本。必须提前执行 update 命令以便 apt-get 知道已安装的包是否有新版本可用。
注意 update 与 upgrade 的区别:update 是更新软件列表,upgrade 是更新软件。
1 |
|
3、apt和apt-get的区别
apt是apt-get的更高级别别名,它使用 apt-get 和 dpkg 来管理软件包,但是更为简洁明了。相比于apt-get命令而言,apt命令在一些方面更为便捷,例如:
- APT可以更好的处理软件包的依赖关系,避免意外的错误跑出来,同时APT会自动处理必要的依赖项。
- APT支持并发的下载和安装,让软件包的安装更为快速。
- APT不仅可以安装或卸载所需软件包,还可以递归地去获取所有的依赖项或使用新的软件包来替换旧的软件包。
但是,apt和apt-get的底层命令是一样的,所以apt并不能替代apt-get。