Linux操作系统常见的包管理工具都有哪些

来源:草根站长作者:盲改大师头衔:程序员
导读:本期聚焦于小伙伴创作的《Linux操作系统常见的包管理工具都有哪些》,敬请观看详情,探索知识的价值。以下视频、文章将为您系统阐述其核心内容与价值。如果您觉得《Linux操作系统常见的包管理工具都有哪些》有用,将其分享出去将是对创作者最好的鼓励。

Linux操作系统作为开源系统的代表,不同发行版基于自身设计理念适配了不同的软件包管理工具,这些工具承担着软件安装、依赖处理、版本更新等核心功能,是用户日常操作Linux系统时必然会接触到的组件。

Linux操作系统常见的包管理工具都有哪些

基于Debian系的包管理工具

Debian、Ubuntu、Linux Mint等发行版都属于Debian系,这类系统常用的包管理工具主要有两种,分别是底层工具dpkg和高层工具apt

dpkg工具

dpkg是Debian系最基础的包管理工具,直接处理.deb格式的软件包,不具备自动处理依赖的功能,适合手动安装单个本地.deb包的场景。

常见的dpkg命令如下:

  • 安装本地deb包:dpkg -i 包名.deb
  • 卸载软件:dpkg -r 包名
  • 查看已安装包列表:dpkg -l
  • 查看包详细信息:dpkg -s 包名

下面是安装本地.deb包的示例代码:

# 假设当前目录有nginx_1.18.0-6ubuntu14_amd64.deb文件
sudo dpkg -i nginx_1.18.0-6ubuntu14_amd64.deb
# 如果安装时出现依赖缺失,可运行以下命令修复依赖
sudo apt -f install

apt工具

apt是基于dpkg的高层包管理工具,会自动处理软件依赖,同时从系统配置的软件源中获取最新的软件包信息,是日常使用频率最高的工具。

常见的apt命令如下:

  • 更新软件源缓存:sudo apt update
  • 安装软件:sudo apt install 包名
  • 卸载软件并保留配置文件:sudo apt remove 包名
  • 卸载软件并删除配置文件:sudo apt purge 包名
  • 升级所有可更新软件:sudo apt upgrade
  • 清理无用依赖包:sudo apt autoremove

下面是安装nginx软件的示例代码:

# 更新软件源
sudo apt update
# 安装nginx
sudo apt install nginx
# 查看nginx安装状态
dpkg -l nginx

基于RedHat系的包管理工具

CentOS、RHEL、Fedora等发行版属于RedHat系,这类系统对应的包管理工具底层为rpm,高层工具早期为yum,新版本系统多使用dnf

rpm工具

rpm是RedHat系的基础包管理工具,处理.rpm格式的软件包,同样不具备自动依赖处理功能,适合本地.rpm包的安装操作。

常见的rpm命令如下:

  • 安装本地rpm包:sudo rpm -ivh 包名.rpm
  • 卸载软件:sudo rpm -e 包名
  • 查看已安装包列表:rpm -qa
  • 查看包详细信息:rpm -qi 包名

下面是安装本地.rpm包的示例代码:

# 假设当前目录有nginx-1.20.1-10.el8.x86_64.rpm文件
sudo rpm -ivh nginx-1.20.1-10.el8.x86_64.rpm

yum和dnf工具

yum是早期RedHat系的高层包管理工具,基于rpm实现,可自动处理依赖并从软件源获取软件包。dnfyum的下一代替代工具,在依赖处理效率和性能上更优,Fedora和部分新版本CentOS已经默认使用dnf,且dnf兼容yum的命令语法。

常见的yum/dnf命令如下:

  • 更新软件源缓存:sudo yum makecachesudo dnf makecache
  • 安装软件:sudo yum install 包名sudo dnf install 包名
  • 卸载软件:sudo yum remove 包名sudo dnf remove 包名
  • 升级所有可更新软件:sudo yum upgradesudo dnf upgrade
  • 搜索软件包:sudo yum search 关键词sudo dnf search 关键词

下面是使用dnf安装nginx的示例代码:

# 更新软件源缓存
sudo dnf makecache
# 安装nginx
sudo dnf install nginx
# 查看nginx版本
nginx -v

其他发行版常见包管理工具

除了Debian系和RedHat系之外,其他小众发行版也有适配的专属包管理工具:

  • Arch Linux使用的pacman工具,处理.pkg.tar.xz格式的包,命令简洁,支持滚动更新。
  • openSUSE使用的zypper工具,基于rpm实现,适配openSUSE的软件源体系。
  • Gentoo使用的emerge工具,基于源码编译安装软件,可高度自定义编译参数。

不同包管理工具对比

为了更清晰地了解不同工具的差异,以下是核心工具的对比信息:

工具名称适用发行系处理包格式自动处理依赖
dpkgDebian系.deb
aptDebian系.deb
rpmRedHat系.rpm
yum/dnfRedHat系.rpm
pacmanArch Linux.pkg.tar.xz

注意事项

使用包管理工具时需要注意,不同发行版的软件源配置不同,安装软件前建议先更新软件源缓存,避免出现找不到软件包的问题。另外,不要跨发行系混用包管理工具,比如在Debian系统上使用rpm安装软件,很容易出现依赖冲突和系统故障。

包管理工具是Linux系统的核心组件,熟练掌握对应发行版的包管理命令,能大幅提升软件管理效率,减少手动处理依赖的时间成本。

Linux包管理工具dpkgaptrpm修改时间:2026-06-23 04:36:41

免责声明:​ 已尽一切努力确保本网站所含信息的准确性。网站内容多为原创整理与精心编撰,观点力求客观中立。本站旨在免费分享,内容仅供个人学习、研究或参考使用。若引用了第三方作品,版权归原作者所有。如内容涉及您的权益,请联系我们处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。AI、前端、编程、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握开发与运维所需的核心技术。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端编程,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。