Ubuntu apt软件安装与卸载 作者:马育民 • 2026-09-26 10:08 • 阅读:10001 # 介绍 Ubuntu 主流包管理:**apt(推荐,Debian系官方)**,还有 `dpkg`(本地deb包)、snap、flatpak。 下面以 Ubuntu 20.04 / 22.04 / 24.04 通用命令为主。 # 一、前置:更新软件源索引 Ubuntu 的 apt 不会每次都实时联网查询软件信息,而是在本地维护一份清单: - 有哪些软件包 - 每个包叫什么名字 - 版本号是多少 - 依赖关系是什么 - 包是否可用 ### 类比 软件源服务器是书店,`apt update` 只是把书店最新的**图书目录**下载到你电脑; ### 不更新直接安装的结果 - 安装软件:能装,但可能装到旧版本 - 软件源里已经移除的包:提示找不到包,直接报错:`Unable to locate package xxx`。 - 升级(apt upgrade):不会升级到最新版本 - 依赖报错、版本冲突(企业服务器高频坑) ### 更新源索引(推荐) 安装前建议更新,只更新包信息,不升级软件 ```bash sudo apt update ``` ### 更新系统所有已安装软件(升级版本) ``` sudo apt upgrade -y ``` **解释:** - `sudo`:管理员权限 - `-y`:所有确认选项自动选 yes # 二、apt 安装软件(在线源) ### 1. 搜索软件 不知道完整包名时搜索: ```bash apt search 关键词 # 示例:搜索nginx apt search nginx ``` ### 2. 安装软件 ```bash sudo apt install 包名 ``` ##### 例子:安装nginx ``` sudo apt install nginx ``` ##### 一次性安装多个软件 ``` sudo apt install nginx mysql-server ``` ### 3. 安装指定版本 ```bash sudo apt install 包名=版本号 ``` ##### 示例 ``` sudo apt install nginx=1.18.0-0ubuntu1.3 ``` # 三、apt 卸载软件 3种程度 ### 1. remove:删除程序文件,**保留配置文件**(常用) ```bash sudo apt remove 包名 ``` ##### 示例 ``` sudo apt remove nginx ``` 适合以后可能重装,想保留配置的场景。 ### 2. purge:删除程序 + **连同配置文件一起删掉**(彻底卸载) ```bash sudo apt purge 包名 ``` ##### 例子 ``` sudo apt purge nginx ``` ### 3. autoremove:清理不再依赖的残留依赖包(企业不推荐) 当你卸载软件后,很多依赖包不再被使用,清理: ```bash sudo apt autoremove ``` ##### 清理时一并删除残留配置 ``` sudo apt autoremove --purge ``` ### 企业不推荐 `autoremove` 会自动删除所有标记为自动安装且无依赖的包,在复杂业务服务器(装了很多组件、依赖链错综复杂),**有可能误删业务需要的底层依赖包,引发事故**。 # 四、dpkg:本地离线包安装 比如下载的谷歌浏览器、微信 `.deb` 包 dpkg 不会自动处理依赖!缺依赖会报错,需要 apt 修复。 ### 安装deb包 ```bash sudo dpkg -i 文件名.deb # 示例 sudo dpkg -i google-chrome-stable_current_amd64.deb ``` 如果提示依赖缺失,执行这条自动修复依赖: ```bash sudo apt -f install ``` ### 用 dpkg 卸载deb安装的软件 ```bash sudo dpkg -r 包名 # remove,保留配置 sudo dpkg -P 包名 # purge,删除配置 ``` ### dpkg 查询已安装包 ```bash # 列出全部已安装软件 dpkg -l # 查找某个软件是否安装 dpkg -l | grep nginx ``` # 五、查看软件信息 ```bash # 查看包详情 apt show nginx # 查看软件安装位置、文件列表 dpkg -L nginx ``` # 清理缓存 apt下载的安装包会缓存在本地,占用磁盘: ```bash # 删除所有缓存的安装包 sudo apt clean # 删除旧版本缓存包 sudo apt autoclean ``` # 常见问题 1. **E: Could not get lock /var/lib/dpkg/lock** 有另一个apt进程在跑(软件商店/另一个终端),关掉再执行;或者强制解锁(谨慎) ```bash sudo rm /var/lib/dpkg/lock-frontend sudo rm /var/lib/dpkg/lock ``` 2. **apt search 找不到软件** 软件源不全,需要修改 `/etc/apt/sources.list`,或者软件名字不对。 3. **dpkg安装deb报依赖错误** 执行 `sudo apt -f install` 修复依赖。 原文出处:/show_1GW47JgImYdN.html