APT
是高级包管理工具(Advanced Package Tool
),是Debian
包管理系统的一个高级界面,提供了apt-get
程序。它提供了可以搜索和管理软件包,以及查询软件包信息的命令行工具,以及访问libapt-pkg
库的所有功能的底层接口。
从Debian Jessie
开始,一些常用的apt-get
和apt-cache
命令在新的apt
程序中有一个等价的形式。这意味着某些流行的命令,例如 apt-get update、apt-get install、apt-get remove、apt-cache search 和 apt-cache show 可以简单地通过 apt 进行调用,比如 apt update、apt install、apt remove、apt search 和 apt show。
命令行
update:更新包索引
实际上是根据/etc/apt/sources.list
更新/var/lib/apt/lists
软件包列表。
|
|
upgrade:升级软件包
实际上是根据/var/lib/apt/lists
中的软件包信息来升级软件。
|
|
full-upgrade:升级所有软件包
|
|
list:列出软件包
-
--installed
选项:列出当前已安装软件包1 2 3 4 5
# 查看已安装的某个软件包 $ apt list --installed squid Listing... Done squid/jammy-proposed,now 5.9-0ubuntu0.22.04.1 amd64 [installed] N: There are 2 additional versions. Please use the '-a' switch to see them.
-
--upgradeable
选项:列出可升级的软件包1 2 3 4 5
apt list --upgradable Listing... Done docker-ce-cli/jammy 5:26.1.3-1~ubuntu.22.04~jammy amd64 [upgradable from: 5:26.1.2-1~ubuntu.22.04~jammy] docker-ce-rootless-extras/jammy 5:26.1.3-1~ubuntu.22.04~jammy amd64 [upgradable from: 5:26.1.2-1~ubuntu.22.04~jammy] docker-ce/jammy 5:26.1.3-1~ubuntu.22.04~jammy amd64 [upgradable from: 5:26.1.2-1~ubuntu.22.04~jammy]
-
--all-versions
选项:列出软件包的所有版本1 2 3 4 5 6 7 8 9 10
# 查找已安装软件包的所有版本 $ apt list --all-versions 略 # 查找指定软件包的所有版本 $ apt list --all-versions squid Listing... Done squid/jammy-proposed,now 5.9-0ubuntu0.22.04.1 amd64 [installed] squid/jammy-security,jammy-updates 5.7-0ubuntu0.22.04.4 amd64 squid/jammy 5.2-1ubuntu4 amd64
search:列出匹配关键词的软件包
|
|
show:查看软件包元信息
|
|
install:安装软件包
-y
选项:静默安装
|
|
reinstall:重新安装软件包
|
|
remove: 移除软件包(可能会遗留配置文件)
|
|
purge:移除软件包(软件和配置文件一并删除)
|
|
autoremove:自动删除依赖软件包
每当在系统安装软件包时依赖的软件包也将被安装。删除软件包后,软件包依赖的软件将保留在系统。这些被其它软件依赖软件包不再被其它程序使用,可以运行命令sudo apt autoremove
删除。
|
|
edit-sources:编辑镜像源文件
关于镜像源文件,详见下文。
镜像源
-
/etc/apt/sources.list
:镜像源配置文件 -
/var/lib/apt/lists
:该目录存放的是已经下载的各软件源的元数据,这些数据是系统更新和软件包查找工具的基础。对于基于Ubuntu
系统为基础构建容器镜像的场景,建议在RUN
指令的最后删除该目录以缩小容器镜像。1 2 3 4 5 6 7 8
FROM ubuntu:22.04 RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ echo "Asia/Shanghai" > /etc/timezone && \ apt-get update && \ apt-get install --no-install-recommends -y ca-certificates && \ update-ca-certificates && \ rm -rf /var/lib/apt/lists/*
常用镜像源
-
Ubuntu 22.04 阿里云镜像源
1 2 3 4 5 6 7 8 9 10 11
$ cat /etc/apt/sources.list deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
-
Ubuntu 22.04 网易镜像源
1 2 3 4 5 6 7 8 9 10 11
$ cat /etc/apt/sources.list deb http://mirrors.163.com/ubuntu/ jammy main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ jammy-security main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ jammy-updates main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ jammy-proposed main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ jammy-backports main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ jammy main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ jammy-security main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ jammy-updates main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ jammy-proposed main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ jammy-backports main restricted universe multiverse