掌控软件管理:详解 APT、YUM 和 DNF 的使用方法

本文涉及的产品
无影云电脑企业版,4核8GB 120小时 1个月
无影云电脑个人版,1个月黄金款+200核时
资源编排,不限时长
简介: 掌控软件管理:详解 APT、YUM 和 DNF 的使用方法

在 Linux 系统的运维工作中,软件包管理器是不可或缺的工具。它们帮助我们轻松地安装、更新、卸载和管理系统中的软件包。APT、YUM 和 DNF 是当前最流行的包管理器,分别用于不同的 Linux 发行版。本文将深入解析它们的使用方法,并通过代码示例展示如何高效地管理软件包。

一、APT:Ubuntu/Debian 系的首选

APT (Advanced Package Tool) 是 Debian 系列发行版(如 Ubuntu)使用的包管理工具。它通过 .deb 包来管理软件,且支持从网络仓库下载和安装。

1. 更新软件包列表

在安装或升级软件之前,需先更新软件源列表:


sudo apt update

此命令会从配置的源(通常在 /etc/apt/sources.list 文件中)拉取最新的软件包信息。

2. 安装软件包

以下命令安装 curl 工具:


sudo apt install curl

APT 会自动处理依赖关系,无需手动下载其他依赖包。

3. 卸载软件包

sudo apt remove curl

如果希望删除配置文件和数据,可使用 purge:

sudo apt purge curl

4. 升级系统

APT 允许升级所有已安装的软件:

sudo apt upgrade

如果需要升级内核等核心软件,可使用:

sudo apt full-upgrade

5. 查找和清理

搜索软件包:

apt search nginx

清理无用的包和缓存:


sudo apt autoremove
sudo apt clean

二、YUM:Red Hat/CentOS 的经典选择

YUM (Yellowdog Updater, Modified) 是 Red Hat 系列发行版的传统包管理器,主要管理 .rpm 包。

1. 查看和更新仓库

列出可用的软件仓库:

yum repolist

更新所有仓库信息:

sudo yum update

2. 安装软件包

以下命令安装 vim:

sudo yum install vim

3. 删除软件包

与 APT 类似,YUM 也支持软件包的删除:


sudo yum remove vim

4. 搜索和信息查询

搜索某个软件:

yum search httpd

查看已安装的软件包信息:

yum info vim

5. 清理缓存

YUM 的缓存清理命令:

sudo yum clean all

三、DNF:YUM 的继任者

DNF (Dandified YUM) 是 YUM 的升级版,适用于 RHEL 8 及以上版本,具有更好的依赖解析能力和性能。

1. 更新和安装

更新系统:

sudo dnf update

安装软件包 git:

sudo dnf install git

2. 删除和清理

删除软件包:

sudo dnf remove git

清理缓存:

sudo dnf clean all

3. 搜索软件

以下命令搜索软件包:

dnf search docker

4. 高级操作:组管理

DNF 支持管理软件组,例如安装开发工具:

sudo dnf groupinstall "Development Tools"

四、APT、YUM 和 DNF 的对比

功能 APT YUM DNF

  • 默认发行版 Debian/Ubuntu CentOS/RHEL 6/7 CentOS/RHEL 8+
  • 依赖处理能力 较强 较好 最优
  • 性能 快速 较慢 更快
  • 命令兼容性 专属 向下兼容 基于 YUM,更现代化

    五、图示:APT 与 DNF 工作原理对比

APT 工作原理

  • 从 /etc/apt/sources.list 文件中读取源
  • 拉取元数据,匹配软件包
  • 自动安装依赖并完成设置。

    DNF 工作原理

  • 从 /etc/yum.repos.d/ 目录读取仓库配置

  • 提供更智能的依赖解析和缓存管理。

    六、常见问题及解决方法

    APT 安装失败:Unable to locate package

  • 检查 /etc/apt/sources.list 是否配置正确。

  • 更新源:sudo apt update。

    YUM 下载速度慢

  • 可安装 yum-plugin-fastestmirror 插件。

    DNF 提示冲突

  • 使用 --allowerasing 选项解决依赖冲突。

    总结

    APT、YUM 和 DNF 是 Linux 世界的软件管理利器,理解其基础用法后,可以显著提高运维效率。在实际工作中,根据系统环境选择合适的包管理器,灵活运用搜索、更新和清理命令,将极大地简化系统管理任务。

希望这篇文章能帮助你快速上手,并在实践中游刃有余地管理 Linux 软件包!

目录
相关文章
|
2月前
|
存储 算法 Linux
DNF和Yum
DNF和Yum
236 3
|
4月前
|
算法 Ubuntu Linux
在Linux中,对比apt和yum两种包管理器在不同Linux发行版中应用有何区别?
在Linux中,对比apt和yum两种包管理器在不同Linux发行版中应用有何区别?
|
4月前
|
缓存 安全 Linux
本地YUM源大揭秘:搭建您自己的Linux软件宝库,从此告别网络依赖!一文掌握服务器自给自足的终极技能!
【8月更文挑战第13天】在Linux中,YUM是一款强大的软件包管理工具,可自动处理依赖关系。为适应离线或特定安全需求,本指南教你搭建本地YUM源。首先创建存放软件包的`localrepo`目录,复制`.rpm`文件至其中。接着,安装并运用`createrepo`生成仓库元数据。随后配置新的`.repo`文件指向该目录,并禁用GPG检查。最后,清理并重建YUM缓存,即可启用本地YUM源进行软件搜索与安装,适用于网络受限环境。
302 3
|
4月前
|
Ubuntu Linux 索引
在Linux中,APT和YUM软件包管理器的何区别?
在Linux中,APT和YUM软件包管理器的何区别?
|
4月前
|
缓存 Ubuntu Linux
在Linux中,Yum、Dnf、Apt-get和Pacman有何区别?
在Linux中,Yum、Dnf、Apt-get和Pacman有何区别?
|
5月前
|
SQL Python
你需要在你的系统上安装`sqlmap`。这通常可以通过下载其源代码并编译,或者使用包管理器(如`apt`、`yum`或`pip`,但请注意,`pip`通常不直接提供`sqlmap`)来完成。
你需要在你的系统上安装`sqlmap`。这通常可以通过下载其源代码并编译,或者使用包管理器(如`apt`、`yum`或`pip`,但请注意,`pip`通常不直接提供`sqlmap`)来完成。
|
6月前
|
Ubuntu Python
银河麒麟-麒麟软件操作系统 kylin 搭建yum源 ubuntu搭建yum源 yum软件仓库搭建ftp源、python源、硬盘源
银河麒麟-麒麟软件操作系统 kylin 搭建yum源 ubuntu搭建yum源 yum软件仓库搭建ftp源、python源、硬盘源
823 1
|
5月前
|
关系型数据库 MySQL Linux
Linux部署实战前言,MySQL在CentOS安装【单机软件】,MySQL的安装需要root权限,yum install mysql,systemctl enable mysqld开机自启的意思
Linux部署实战前言,MySQL在CentOS安装【单机软件】,MySQL的安装需要root权限,yum install mysql,systemctl enable mysqld开机自启的意思
|
5月前
|
Ubuntu Linux
Linux软件安装-Linux系统靠yum命令安装软件,yum命令是一个RPM包软件管理器,用于自动化安装配置Linux软件,.rpm是Linux包下的软件,yum install下载 wget re
Linux软件安装-Linux系统靠yum命令安装软件,yum命令是一个RPM包软件管理器,用于自动化安装配置Linux软件,.rpm是Linux包下的软件,yum install下载 wget re
|
6月前
|
缓存 人工智能 Linux
【Linux】--- 详解Linux软件包管理器yum和编辑器vim
【Linux】--- 详解Linux软件包管理器yum和编辑器vim
101 0