Linux apt命令
参考资料
- 重要なのに忘れがちなapt関係のコマンドのメモ
目录
- 一. 简介
- 二. 常用命令
- 2.1 更新
- 2.2 查询
- 2.3 安装
- 2.4 删除
- 三. `apt-*`系列命令
一. 简介
🔷apt的全称是Advanced Package Tool,是Ubuntu、Debian及其衍生发行版(如 Linux Mint、Kali 等)中最常用的软件包管理命令,它负责安装、升级、卸载软件以及管理软件仓库。
在apt命令出现之前,最常用的 Linux 包管理命令都被分散在了apt-get、apt-cache和apt-config这三条命令当中。
apt命令的引入就是为了解决包管理命令过于分散的问题apt命令包括了 apt-get 命令出现以来使用最广泛的功能选项,以及 apt-cache 和 apt-config 命令中很少用到的功能。
在使用 apt 命令时,用户不必再由 apt-get 转到 apt-cache 或 apt-config,而且 apt 更加结构化,并为用户提供了管理软件包所需的必要选项。简单来说就是:apt命令是apt-get、apt-cache和apt-config中最常用命令选项的集合。
🔷apt 安装的软件来自 软件源(Repository)
Ubuntu 22.04及以前的软件源位置
[apluser@FengYeHong-HP]~ $ls-l/etc/apt/sources.list -rw-r--r--1root root2403Oct262022/etc/apt/sources.listUbuntu 24.04之后的软件源位置
apluser@ubuntu24-01:~$ls-l/etc/apt/sources.list.d/ubuntu.sources -rw-r--r--1root root386Sep252024/etc/apt/sources.list.d/ubuntu.sources二. 常用命令
2.1 更新
# 更新软件索引sudoaptupdate# 升级所有软件sudoaptupgrade2.2 查询
# 查看所有可升级的软件aptlist--upgradable# 搜索软件aptsearch nginx# 查看指定软甲有哪些版本aptlist-anginx# 查看软件信息aptshow nginx2.3 安装
# 安装软甲sudoaptinstallnginx# 自动确认要安装的软件, 在自动化脚本中常用sudoaptinstall-ynginx# -f:fix broken(修复损坏的依赖), APT 会自动下载缺失的软件包,然后继续完成安装。sudoaptinstall-fnginx# 安装指定版本的软件sudoaptinstallnginx=1.24.0-2ubuntu7# 从安装包安装软件, apt会自动解析并安装缺失的依赖sudoaptinstall./google-chrome.deb# 重新安装软件, 适合文件损坏,配置恢复,程序缺失sudoaptreinstall openssh-server2.4 删除
# 删除软件, 但是不会删除配置文件sudoaptremove nginx# 连配置一起删除sudoaptpurge nginx# 清理无用依赖sudoaptautoremove三.apt-*系列命令
🔷apt和apt-*都是Ubuntu/Debian系列发行版中的软件包管理命令,它们都基于底层的 APT(Advanced Package Tool)库,但它们的定位并不完全相同。
apt:Ubuntu 16.04 左右推出,面向终端交互的命令(interactive command)apt-*:稳定的脚本接口(stable scripting interface)
🔺apt命令在脚本中使用可能存在的问题:
- 官方可能会对输出的格式进行调整,输出格式可能变化。
- 会加入交互体验,这些交互体验只是为了让人类阅读,对脚本没有意义。
🔷官方明确保证apt-*系列命令 的兼容性。
apt-get,apt-cache,apt-mark都是稳定接口(Stable CLI)。
因此大量:CI/CD,Dockerfile,Ansible,企业脚本都几乎全部使用apt-*。
| apt | apt-*系列命令 |
|---|---|
| 面向普通用户 | 面向脚本和底层工具 |
| 输出更友好 | 输出较稳定,适合脚本解析 |
| 显示安装进度 | 通常不显示友好的进度 |
| 提供常用功能的统一接口 | 功能更完整、更底层 |
🔷常见的命令对照表
| 日常操作 | apt | apt-get/apt-cache |
|---|---|---|
| 更新索引 | apt update | apt-get update |
| 升级软件 | apt upgrade | apt-get upgrade |
| 完整升级(允许安装/删除依赖) | apt full-upgrade | apt-get dist-upgrade |
| 安装软件 | apt install nginx | apt-get install nginx |
| 删除软件 | apt remove nginx | apt-get remove nginx |
| 连配置一起删除 | apt purge nginx | apt-get purge nginx |
| 自动删除无用依赖 | apt autoremove | apt-get autoremove |
| 搜索软件 | apt search nginx | apt-cache search nginx |
| 查看软件信息 | apt show nginx | apt-cache show nginx |
| 查看软件策略 | apt policy nginx | apt-cache policy nginx |
| 列出已安装软件 | apt list --installed | 无直接对应(通常结合dpkg -l) |