DNF管理

DNF

新一代的RPM軟件包管理器。DNF 發行日期是2015年5月11日,DNF 包管理器採 用Python 編寫,發行許可爲GPL v2,首先出如今Fedora 18 發行版中。在 RHEL 8.0 版本正式 取代了 YUM,DNF包管理器克服了YUM包管理器的一些瓶頸,提高了包括用戶體驗,內存佔用, 依賴分析,運行速度等
注意:DNF 並未默認安裝在 RHEL 或 CentOS 7系統中,可是 Fedora 22 已經默認使用 DNFphp

  • 配置文件:/etc/dnf/dnf.conf
  • 倉庫文件:/etc/yum.repos.d/ *.repo
  • 日誌: /var/log/dnf.rpm.log,/var/log/dnf.log

用法與yum一致

dnf --version
dnf repolist
dnf install httpd
dnf remove httpd
dnf clean all
dnf makecache
dnf list installed
dnf list available
dnf search nano
dnf history undo 1 緩存

安裝DNF包管理器

  • 一、爲了安裝 DNF ,必須先安裝並啓用 epel-release 依賴
    yum install epel-release
    或者
    #yum install epel-release -y
    其實這裏並無強制使用」-y」的理由,相反的,在不使用」-y」的狀況下,用戶能夠在安裝過程當中查看到底有哪些東西被安裝進了系統。但對於沒有這個需求的用戶,可使用」-y」參數來自動安裝全部東西。
  • 二、使用 epel-release 依賴中的 YUM 命令來安裝 DNF 包。在系統中執行如下命令
    yum install dnf
  • 安裝完成

經常使用命令示例

查看安裝在系統中的DNF包管理器的版本
#dnf –version
DNF管理
查看系統中可用的 DNF 軟件庫
#dnf repolist
DNF管理
顯示系統中可用和不可用的全部的 DNF 軟件庫
#dnf repolist all
DNF管理
列出全部RPM包
#dnf list
DNF管理
列出全部安裝了的 RPM包
#dnf list installed
DNF管理
列出全部可供安裝的RPM包
#dnf list available
DNF管理
搜索軟件庫中的 RPM 包:不知道想要安裝的軟件的準確名稱時,能夠用該命令來搜索軟件包。須要在」search」參數後面鍵入軟件的部分名稱來搜索。(在本例中使用」nano」)
#dnf search nano
DNF管理
查找某一文件的提供者:想要查看是哪一個軟件包提供了系統中的某一文件時,可使用這條命令。(在本例中,查找」/bin/bash」這個文件的提供者)
#dnf provides /bin/bash
DNF管理
查看軟件包詳情
#dnf info nano
DNF管理
安裝軟件包:系統將會自動安裝對應的軟件及其所需的全部依賴(在本例中,安裝nano軟件)
#dnf install nano
DNF管理
升級軟件包(在本例中,升級」systemd」這一軟件包)
#dnf update systemd
DNF管理
檢查系統全部軟件包的更新
#dnf check-update
DNF管理
升級全部系統軟件包
#dnf update 或 # dnf upgrade
DNF管理
刪除軟件包(在本例刪除」nano」這一軟件包)
#dnf remove nano 或 #dnf erase nano
DNF管理
刪除無用孤立的軟件包
#dnf autoremovebash

DNF管理
刪除緩存的無用軟件包
#dnf clean all
DNF管理
獲取有關某條命令的使用幫助(本例中獲取有關命令」clean」的使用幫助)
#dnf help clean
DNF管理
查看全部的DNF命令及其用途
#dnf help
DNF管理
查看DNF命令的執行歷史
#dnf history
DNF管理
查看全部的軟件包組
#dnf grouplist
DNF管理
安裝一個軟件包組(本例中,安裝」Educational Software」這個軟件包組)
#dnf groupinstall ‘Educational Software’
DNF管理
升級一個軟件包組中的軟件包(本例中,升級」Educational Software」這個軟件包組中的軟件)
#dnf groupupdate ‘Educational Software’
DNF管理
刪除一個軟件包組(本例中,刪除」Educational Software」這個軟件包組)
#dnf groupremove ‘Educational Software’
DNF管理
從特定的軟件包庫安裝特定的軟件(本例中從軟件包庫 epel 中安裝 phpmyadmin 軟件包)
#dnf –enablerepo=epel install phpmyadmin
更新軟件包到最新的穩定發行版
#dnf distro-sync
從新安裝特定軟件包(本例中,從新安裝」nano」這個軟件包)
#dnf reinstall nano
DNF管理
回滾某個特定軟件的版本(本例中,下降」acpid」這個軟件包的版本)
#dnf downgrade acpid
樣例輸出:
Using metadata from Wed May 20 12:44:59 2015
No match for available package: acpid-2.0.19-5.el7.x86_64
Error: Nothing to do.
在執行這條命令的時候, DNF 並無按照我指望的那樣降級指定的軟件(「acpid」)。該問題已經上報ide

相關文章
相關標籤/搜索