YUM已死,DNF万岁
自Fedora22版本后,DNF(Dandified YUM)成为Fedora默认的包管理工具。在过渡期内用户仍然可以使用YUM来安装删除软件。但当用户使用YUM来安装软件时,Fedora首先会提示用户YUM已经过时了,推荐用户使用DNF,然后继续安装软件。
为什么要舍弃Yum?
有三个主要原因:
- Yum没有API文档。这意味着开发者需要做更多的工作。Yum开发者写一个调用函数都需要查看Yum的代码库,使开发变得缓慢。
- Python3。Fedora将会过渡到Python3,但Yum却没有这个能力,而DNF既可以使用Python2,也可以在Python3环境下运行。
- 依赖解决能力长期是Fedora软件包管理的阿喀硫斯之踵。DNF使用基于SAT的依赖问题解决方法,与SUSE和OpenSUSE的Zypper类似。
简单地说,Yum已经过时了。
为什么这是一件好事?
我们得从两个不同的角度来看待这个问题:最终用户和开发者。如果你是最终用户,DNF可以为你提供更加稳定的体验,因为DNF可以更好地解决依赖问题。DNF可以自动为你安装好依赖,而不需要你手动安装。用户在使用DNF安装软件时,也会发现内存使用量没有像Yum那样高。软件安装和升级可以更加迅速地完成。尤为重要的一点是,Yum在升级软件的时候变得越来越慢,与apt-get和zypper相比更是如此。如果你是一个开发者,DNF可以让你更加高效地工作,因为DNF有API文档。
如何使用DNF?
DNF的语法与Yum几乎一样,例如,使用DNF安装control-center的命令为
sudo dnf install control-center
删除control-center的命令为
sudo dnf remove control-center
升级软件
sudo dnf update
升级系统
sudo dnf upgrade
清除RPM包缓存
sudo dnf clean packages
输入命令man dnf查看完整的用法。
RHEL/CentOS/Scientific Linux用户需要先安装DNF
yum install epel-release yum install dnf
为这篇文章评分
[Total: 16 Average: 3.2]