DNF新一代的RPM軟件包管理器。他首先出如今 Fedora 18 這個發行版中。而最近,他取代了YUM,正式成爲 Fedora 22 的包管理器。php
說明:DNF包管理工具只是代替yum客戶端的工具,實質上dnf和yum都仍是使用同一個YUM源。html
DNF包管理器克服了YUM包管理器的一些瓶頸,提高了包括用戶體驗,內存佔用,依賴分析,運行速度等多方面的內容。python
提示:實際使用中,dnf確實比yum快不少。nginx
DNF使用 RPM, libsolv 和 hawkey 庫進行包管理操做。儘管它沒有預裝在 CentOS 和 RHEL 7 中,但你能夠在使用 YUM 的同時使用 DNF 。spring
DNF 的最新穩定發行版版本號是 1.0,發行日期是2015年5月11日。 這一版本的額 DNF 包管理器(包括在他以前的全部版本) 都大部分採用 Python 編寫,發行許可爲GPL v2.centos
– 安裝 DNF 包管理器bash
DNF 並未默認安裝在 RHEL 或 CentOS 7系統中,可是 Fedora 22 已經默認使用 DNF .ide
1.爲了安裝 DNF ,您必須先安裝並啓用 epel-release 依賴。工具
在系統中執行如下命令:學習
# yum install epel-release
2.手動安裝python-hawkey須要的依賴包下載地址:http://springdale.math.ias.edu/data/puias/7.6/x86_64/os/Packages/
wget http://springdale.math.ias.edu/data/puias/7.6/x86_64/os/Packages/libsolv-0.6.34-2.el7.x86_64.rpm
wget http://springdale.math.ias.edu/data/puias/7.6/x86_64/os/Packages/hawkey-0.6.3-4.el7.x86_64.rpm
wget http://rpm.pbone.net/index.php3/stat/4/idpl/51213105/dir/centos_7/com/python2-hawkey-0.6.3-4.el7.x86_64.rpm.html
說明:若是安裝的是python2-hawkey,那麼後面安裝的dnf命令將變成dnf-2
3.手動安裝dnf須要的3個安裝包到這裏下載 http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64/
# wget http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64/dnf-0.6.4-2.sdl7.noarch.rpm # wget http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64/dnf-conf-0.6.4-2.sdl7.noarch.rpm # wget http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64/python-dnf-0.6.4-2.sdl7.noarch.rpm # yum install python-librepo # yum install python-libcomps # yum install deltarpm # yum install libreport-filesystem # yum install python-hawkey (這個包可能沒法經過yum安裝,就只能手動安裝及其依賴) # rpm -ivh dnf-conf-0.6.4-2.sdl7.noarch.rpm # rpm -ivh python-dnf-0.6.4-2.sdl7.noarch.rpm # rpm -vih dnf-0.6.4-2.sdl7.noarch.rpm
而後, DNF 包管理器就被成功的安裝到你的系統中了。
在這個教程中,您將會學到27個用於 DNF 包管理器的命令。使用這些命令,你能夠方便有效的管理您系統中的 RPM 軟件包。如今,讓咱們開始學習 DNF 包管理器的27條經常使用命令吧!
– 查看 DNF 包管理器版本
用處:該命令用於查看安裝在您系統中的 DNF 包管理器的版本
命令:
# dnf –version
– 查看系統中可用的 DNF 軟件庫
用處:該命令用於顯示系統中可用的 DNF 軟件庫
命令:
# dnf repolist
– 查看系統中可用和不可用的全部的 DNF 軟件庫
用處:該命令用於顯示系統中可用和不可用的全部的 DNF 軟件庫
命令:
# dnf repolist all
– 列出全部 RPM 包
用處:該命令用於列出用戶系統上的全部來自軟件庫的可用軟件包和全部已經安裝在系統上的軟件包
命令:
# dnf list
– 列出全部安裝了的 RPM 包
用處:該命令用於列出全部安裝了的 RPM 包
命令:
# dnf list installed
– 列出全部可供安裝的 RPM 包
用處:該命令用於列出來自全部可用軟件庫的可供安裝的軟件包
命令:
# dnf list available
– 搜索軟件庫中的 RPM 包
用處:當你不知道你想要安裝的軟件的準確名稱時,你能夠用該命令來搜索軟件包。你須要在」search」參數後面鍵入軟件的部分名稱來搜索。(在本例中咱們使用」nano」)
命令:
# dnf search nano
– 查找某一文件的提供者
用處:當你想要查看是哪一個軟件包提供了系統中的某一文件時,你可使用這條命令。(在本例中,咱們將查找」/bin/bash」這個文件的提供者)
命令:
# dnf provides /bin/bash
– 查看軟件包詳情
用處:當你想在安裝某一個軟件包以前查看它的詳細信息時,這條命令能夠幫到你。(在本例中,咱們將查看」nano」這一軟件包的詳細信息)
命令:
# dnf info nano
對比 dnf install nginx和 yum install nginx的不一樣
# dnf-2 install nginx
# yum install nginx
經過上面的對比,能夠看出來dnf安裝軟件包時不區分目標和依賴,而是直接列出全部相關的軟件包。