linux软件包管理器分 yum/dnf(RHEL 系)和 apt(debian系),命令语法、源配置(/etc/yum.repos.d/ vs /etc/apt/sources.list)、依赖处理方式不同,不可混用。

Linux 软件包安装主要看系统用的是哪种包管理器:RHEL/centos/Fedora 系统用 yum(或新版的 dnf),Debian/ubuntu 系统则用 apt。两者功能类似,但命令语法、源配置和底层机制不同,不能混用。
基础安装命令对比
yum 和 apt 都支持搜索、安装、升级、卸载软件,但写法有明显 区别:
- yum 安装软件:
yum install package-name(需 root 权限,通常加sudo) - apt 安装软件:
sudo apt install package-name - yum 搜索软件:
yum search keyword - apt 搜索软件:
apt search keyword - yum 查看已安装包:
yum list installed - apt 查看已安装包:
apt list --installed
更新软件源与升级系统
两者都需要先同步远程仓库信息,再执行升级操作:
- yum 更新源缓存并升级全部软件:
yum makecache && yum update(CentOS 7 及以前);Fedora 或 CentOS 8+ 推荐用dnf makecache && dnf update - apt 更新源列表并升级:
sudo apt update && sudo apt upgrade;如需升级 系统版本(如 Ubuntu 22.04 → 24.04),用sudo apt full-upgrade或do-release-upgrade
软件源配置方式不同
源地址决定能装什么软件,配置位置和格式差异较大:
- yum/dnf 的源文件在
/etc/yum.repos.d/目录下,每个 .repo 文件定义一个或多个仓库,格式为 INI 风格,例如:
- apt 的源列表在
/etc/apt/sources.list,或放在/etc/apt/sources.list.d/下的 .list 文件中,格式为 deb 行,例如:deb https://archive.ubuntu.com/ubuntu jammy main restricted
依赖处理与 常见问题
两者都会自动解决依赖,但行为细节有别:
- yum 默认安装所有依赖,并提示是否继续;遇到冲突时可能中止,需手动用
yum remove清理旧包 - apt 升级时若遇依赖冲突,会提示“broken packages”,可用
sudo apt --fix-broken install尝试修复 - 卸载软件时,yum 不自动清理无用依赖(除非用
yum autoremove);apt 在apt remove后不会删依赖,但apt autoremove可清除