06. APT 包管理器
APT 是 Debian、Ubuntu 及其衍生系统常用的软件包管理工具,用于安装、升级、卸载软件。
1. APT 与 apt-get
常见命令有 apt、apt-get、apt-cache。
| 命令 | 说明 |
|---|---|
apt | 面向用户的常用命令,输出更友好 |
apt-get | 更稳定,常用于脚本 |
apt-cache | 查询软件包信息 |
日常手动操作优先用 apt。
2. 更新软件源索引
apt update
bash
sudo apt update作用:从软件源服务器获取最新的软件包列表。它不会真正升级软件,只更新本地索引。
常见情况:
bash
sudo apt update
sudo apt install vim3. 升级软件包
apt upgrade
bash
sudo apt upgrade升级已安装软件包,但通常不会删除已有软件包。
apt full-upgrade
bash
sudo apt full-upgrade允许为解决依赖关系而安装或删除软件包。系统大版本升级或复杂依赖场景可能会用到。
区别:
| 命令 | 说明 |
|---|---|
upgrade | 较保守 |
full-upgrade | 可能安装或删除包,执行前要看提示 |
4. 安装软件
apt install
bash
sudo apt install vim
sudo apt install git curl wget常用参数:
| 参数 | 说明 |
|---|---|
-y | 自动回答 yes,脚本中常用 |
--reinstall | 重新安装软件包 |
--no-install-recommends | 不安装推荐依赖,减少体积 |
示例:
bash
sudo apt install -y build-essential
sudo apt install --reinstall openssh-client5. 卸载软件
apt remove
bash
sudo apt remove vim卸载软件,但通常保留配置文件。
apt purge
bash
sudo apt purge vim卸载软件并删除配置文件。
区别:
| 命令 | 说明 |
|---|---|
remove | 删除程序,保留配置 |
purge | 删除程序和配置 |
6. 自动清理
apt autoremove
删除不再需要的依赖包。
bash
sudo apt autoremoveapt clean
清理下载的软件包缓存。
bash
sudo apt cleanapt autoclean
只清理过期缓存。
bash
sudo apt autoclean7. 搜索软件包
apt search
bash
apt search htop
apt search "text editor"apt-cache search
bash
apt-cache search htopapt search 输出更友好,apt-cache search 适合传统用法。
8. 查看软件包信息
apt show
bash
apt show vim
apt show python3常见字段:
| 字段 | 说明 |
|---|---|
Package | 包名 |
Version | 版本 |
Installed-Size | 安装后大小 |
Depends | 依赖 |
Description | 描述 |
9. 查看已安装软件
apt list
bash
apt list --installed
apt list --installed | grep vim查看可升级软件:
bash
apt list --upgradabledpkg -l
bash
dpkg -l
dpkg -l | grep openssh10. 查询文件属于哪个包
已安装文件:dpkg -S
bash
dpkg -S /usr/bin/vim未安装文件:apt-file
apt-file 可能需要先安装:
bash
sudo apt install apt-file
sudo apt-file update
apt-file search bin/htop11. 添加软件源
初学者应谨慎添加第三方软件源。
常见步骤:
bash
sudo add-apt-repository ppa:example/ppa
sudo apt update
sudo apt install package-name说明:
| 命令 | 说明 |
|---|---|
add-apt-repository | 添加 PPA 或软件源 |
apt update | 更新索引 |
apt install | 安装软件 |
服务器或集群环境中,通常没有管理员权限,也不建议随意修改软件源。
12. 常见问题处理
修复依赖
bash
sudo apt --fix-broken install重新配置未完成的软件包
bash
sudo dpkg --configure -a查看锁占用
APT 同一时间只能运行一个实例。如果提示锁被占用,先确认是否有其他安装进程:
bash
ps aux | grep apt不要轻易删除锁文件,除非确认没有相关进程在运行。
13. 常用组合
安装常用工具:
bash
sudo apt update
sudo apt install -y vim git curl wget htop tree系统常规升级:
bash
sudo apt update
sudo apt upgrade
sudo apt autoremove搜索并查看包:
bash
apt search package-name
apt show package-name