如何使用 DNF History 列出手動安裝的包

偶爾,作為 Linux 用戶,您可能希望對 Linux 機器上的各種已安裝軟件包的狀態進行審核。 主要目的是跟踪安裝的軟件包和在某個時間點刪除的軟件包。 在本文中,我們將深入研究檢查已安裝軟件包的事務狀態 Fedora 27 使用 DNF 歷史命令。 這將使您大致了解按時間順序手動安裝和刪除的軟件包的歷史記錄。

使用 dnf 檢索手動安裝的軟件包列表

要檢索用戶手動安裝的軟件包列表,我們運行以下命令

dnf history userinstalled

樣本輸出

Packages installed by user
httpd
gnome-tweak-tool
nodejs

檢索所有交易的列表

要顯示系統中執行的所有先前交易的列表,請運行以下命令

dnf history list all

樣本輸出

ID     | Command line             | Date a | Action | Altere
-------------------------------------------------------------------------------
     3 | install gnome-tweak-tool | 2018-02-11 22:50 | Install        |    2
     2 | remove httpd             | 2018-02-11 22:42 | Erase          |    4
     1 | install nodejs           | 2018-02-11 22:33 | Install        |    4

列出特定交易的更改

要列出特定事務的更改,請在命令末尾附加事務的 ID。 例如,如果我們要檢查上面對 ID 1 的更改 example 這是 nodejs 的安裝,我們運行如下所示的命令

dnf history list 1

樣本輸出

ID     | Command line             | Date a | Action | Altere
-------------------------------------------------------------------------------
     1 | install nodejs           | 2018-02-11 22:33 | Install        |    4

檢索有關特定事務的包的信息

要顯示有關某個交易的包的信息,我們運行如下所示的命令

dnf history info 1

樣本輸出

Transaction ID : 1
Begin time     : Sun Feb 11 22:33:32 2018
Begin rpmdb    : 1403:93d810e4d47f231ae56e62f96163e3d6b01ba7aa
End time       :            22:33:52 2018 (20 seconds)
End rpmdb      : 1407:77a7d6293b725b707e548ed7015a05eaf503d49c
User           : jamie 
Return-Code    : Success
Command Line   : install nodejs
Transaction performed with:
    Installed     dnf-0.6.1-1.fc21.noarch    (unknown)
    Installed     rpm-4.12.0.1-3.fc21.x86_64 (unknown)
Packages Altered:
    Install http-parser-2.0-7.20121128gitcd01361.fc21.x86_64 @fedora
    Install libuv-1:0.10.34-1.fc21.x86_64                    @updates
    Install nodejs-0.10.36-3.fc21.x86_64                     @updates
    Install v8-1:3.14.5.10-18.fc21.x86_64                    @updates

如何撤銷一個完整的事務

如果要回滾事務,例如卸載或安裝包,請使用撤消選項,後跟命令中的事務 ID,如圖所示。 首先,我們將列出交易歷史。

dnf history list all

樣本輸出

ID     | Command line             | Date a | Action | Altere
-------------------------------------------------------------------------------
     3 | install gnome-tweak-tool | 2018-02-11 22:50 | Install        |    2
     2 | remove httpd             | 2018-02-11 22:42 | Erase          |    4
     1 | install nodejs           | 2018-02-11 22:33 | Install        |    4

回滾卸載httpd web server

 dnf history undo 2

以上將重新安裝httpd
樣本輸出

[root@localhost ~]# dnf history undo 2
Undoing transaction 2, from Sun Feb 11 22:42:55 2018
    Erase gnome-user-share-3.14.0-2.fc21.x86_64 (unknown)
    Erase httpd-2.4.16-1.fc21.x86_64            (unknown)
    Erase mod_dnssd-0.6-12.fc21.x86_64          (unknown)
    Erase php-5.6.15-1.fc21.x86_64              (unknown)
================================================================================
 Package                Arch         Version                Repository     Size
================================================================================
Installing:
 gnome-user-share       x86_64       3.14.0-2.fc21          fedora        135 k
 httpd                  x86_64       2.4.16-1.fc21          updates       1.2 M
 mod_dnssd              x86_64       0.6-12.fc21            fedora         27 k
 php                    x86_64       5.6.15-1.fc21          updates       2.6 M

Transaction Summary
================================================================================
Install  4 Packages

Total download size: 4.0 M
Installed size: 13 M
Is this ok [y/N]:

感謝您閱讀這篇文章。 如果您對 DNF 歷史命令的使用有任何疑問,請隨時與我們聯繫。