首页 > 系统相关 >Linux命令之dnf

Linux命令之dnf

时间:2024-09-25 21:46:41浏览次数:1  
标签:dnf 配置文件 Linux 命令 依赖 yum 软件包

dnf [选项] [命令] [包]

  dnf是新一代的RPM软件包管理器,首先出现在 Fedora 18 这个发行版中。它克服了YUM包管理器的一些瓶颈,提升了包括用户体验、内存占用、依赖分析、运行速度等多方面的内容。使用 RPM、 libsolv 和 hawkey 库进行包管理操作。

(1).常用选项

-h 显示帮助信息(基本每个命令不是-h就是--help)
-c 配置文件路径
-R 设置命令最长等待时间
-q 安静的操作
-v 详细的操作
-y 回答所有问题都为”yes”

(2).常用命令

check-update 检查是否有软件包更新
clean 清除缓存数据
remove 移除一个或多个软件包
deplist 列出软件包的依赖关系
info 显示关于软件包或组的详细信息
install 安装一个或多个软件包
list 列出一个或一组软件包
provides 查看指定内容的所属包
search 关键字搜索软件包
upgrade 更新一个或多个软件包,不改变软件设置和系统设置,系统版本升级,内核不变

  注意:dnf update被重定向到了dnf upgrade。

(3).dnf与yum的对比

  1)依赖关系解决

    dnf:dnf在处理依赖关系方面表现出更强的能力。它能够更高效地解析和安装软件包之间的依赖关系,确保系统的稳定性和一致性。

    yum:yum同样能够处理软件包的依赖关系,但在某些复杂场景下,其依赖关系解析能力可能不如dnf。

  2)性能

    dnf:dnf在性能上优于yum,主要体现在包查找速度和并行处理能力上。dnf支持并行操作,可以同时下载和安装多个软件包,从而提高了整体的包管理效率。

    yum:yum在处理大量软件包时可能会受到网络带宽的限制,且不支持并行操作,这在一定程度上影响了其性能表现。

  3)配置文件

    dnf:dnf使用以.repo为后缀的配置文件来管理仓库和源信息。

    yum:yum同样使用以.repo为后缀的配置文件,但还包含了一个主配置文件/etc/yum.conf,用于设置全局的yum配置选项。

  4)用户界面

    dnf:dnf的输出信息更加清晰明了,提供了更多的终端输出信息,使得用户更容易理解和管理软件包。

    yum:yum的输出信息虽然也足够清晰,但在某些方面可能不如dnf直观。

  5)兼容性

    dnf:dnf是在CentOS 8及更高版本中取代了yum作为默认包管理工具的。因此,在较新的Linux发行版中,dnf的兼容性更好。

    yum:yum在旧版本的Linux发行版中广泛使用,如CentOS 7及之前的版本。对于这些系统,yum仍然是主要的包管理工具。

  6)功能扩展性

    dnf:dnf提供了更多的功能扩展性,支持插件系统。用户可以根据自己的需求编写插件来扩展dnf的功能,使其更加灵活和强大。

    yum:yum的功能相对较为有限,主要侧重于基本的包管理操作。虽然yum也支持一些扩展功能,但整体上不如dnf灵活。

  综上所述,dnf和yum在依赖关系解决、性能、配置文件、用户界面、兼容性和功能扩展性等方面存在明显的区别。用户可以根据自己的需求和偏好选择合适的包管理工具。对于新版本的Centos8发行版,推荐使用dnf作为默认的包管理工具;而对于旧版本的系统,yum仍然是一个可靠的选择。

 

参考:

https://blog.csdn.net/m0_63145562/article/details/142307259

标签:dnf,配置文件,Linux,命令,依赖,yum,软件包
From: https://www.cnblogs.com/diantong/p/18432287

相关文章

  • 【linux】cent7安装nmon(arm架构,mac虚拟机)
    因为nmon最新版不支持arm架构,所以需要手动下载源码和编译文件手动生成可执行文件mkdir-p/usr/local/tools/nmoncd/usr/local/tools/nmon1、下载源码地址:https://nmon.sourceforge.io/pmwiki.php?n=Site.CompilingNmonwget http://sourceforge.net/projects/nmon/files/lm......
  • 命令执行面对各种绕过
    1.过滤cat反写成tac2,过滤tac可以通过转义符进行绕过,单引号或者双引号如:ta''c,,ta""c3.过滤关键字如过滤flag可以通过fla*,fla?(使用?时需要注意,文件名剩余长度是多少,?就需要几个)4.过滤空格可以用%09(过滤数字和%时不影响使用)、%0a、${IFS}、<等方式来过滤5.过滤分割符 |&;......
  • k8s常用取证命令
    显示和查找资源列出所有namespace中的所有service$kubectlgetservices列出所有namespace中的所有pod$kubectlgetpods--all-namespaces列出所有pod并显示详细信息$kubectlgetpods-owide列出指定deployment$kubectlgetdeploymentmy-dep列出该nam......
  • 【linux】cent7安装redis
    创建目录mkdir-p/usr/local/rediscd/usr/local/redis1、下载&解压wget http://download.redis.io/releases/redis-7.4.0.tar.gztar-zxvf redis-7.4.0.tar.gz2、编译cd redis-7.4.0make报错:make[3]:cc:命令未找到安装gccyuminstallgcc-c++清除数据makedist......
  • [redis命令]列表命令
    列表操作命令含义LSET通过索引设置列表元素的值LPUSH将一个或多个值插入到列表头部LPUSHX将一个值插入到已存在的列表头部RPUSH在列表中添加一个或多个值LPOP移出并获取列表的第一个元素RPOP移除并获取列表最后一个元素BLPOP移出并获取列表的第一个元素BRPOP移出并获取列表......
  • [redis命令]哈希命令
    命令表命令含义HSET用于设置存储在key中的哈希表字段的值HGET获取存储在哈希表中指定字段的值HGETALL获取在哈希表中指定key的所有字段和值HKEYS获取存储在key中的哈希表的所有字段HVALS用于获取哈希表中的所有值HLEN获取存储在key中的哈希表的字段数量HEXISTS用于......
  • Reis数据库及key的操作命令汇总
    管理命令命令含义BGREWRITEAOF异步执行一个AOF(AppendOnlyFile)文件重写操作BGSAVE在后台异步保存当前数据库的数据到磁盘CLIENT关闭客户端连接CLIENTLIST获取连接到服务器的客户端连接列表CLIENTGETNAME获取连接的名称CLIENTPAUSE在指定时间内终止运行来自客户端的命......
  • linux删除指定日志文件的通用脚本
    linux删除指定日志文件的通用脚本#!/bin/sh#获取删除文件目录MAIN_DIR="/home/user_shell/"DELETE_TIME=`date+%Y-%m-%d\%H:%M:%S`#获取近五天前日期TIMESTAMP1=`date+"%Y-%m-%d"-d"-4days"`TIMESTAMP2=`date+"%Y-%m-%d"-d"-3days"......
  • linux常见指令与权限【第四课】
    19.tar指令(重要):打包/解包,不打开它,直接看内容         tar[-cxtzjvf] :-c :建立一个压缩文件的参数指令(create 的意思);-x :解开一个压缩文件的参数指令!-t :查看 tarfile 里面的文件!-z :是否同时具有 gzip 的属性?亦即是否需要......
  • Linux 基础入门操作 第十章 多线程实现
    10线程介绍线程是进程的一条执行路径。每个线程共享其所附属的进程的所有的资源,包括打开的文件、页表(因此也就共享整个用户态地址空间)、信号标识及动态分配的内存等等。线程和进程的关系是:线程是属于进程的,线程运行在进程空间内,同一进程所产生的线程共享同一物理内存空间......