如何在 Linux 中使用 yum history 命令

yum history命令是系統管理員在 Linux 系統上追蹤與管理軟體套件安裝及更新的強大工具。此命令提供所有 Yum 交易的詳細資訊,方便排查問題、復原變更或稽核系統修改。

在本指南中,我們將介紹如何使用yum history命令、解讀其輸出內容,並執行復原交易等特定操作。


yum history命令有什麼作用?

yum history命令可讓系統管理員查看 Yum 交易的歷史記錄,包括:

  • 各交易的日期與時間。
  • 受影響的軟體套件數量。
  • 交易是成功還是已中止。
  • 各交易之間 RPM 資料庫的變更。
  • 復原或重做特定交易的能力。

檢視 Yum 交易歷史

若要檢視交易歷史,請執行下列命令:

sudo yum history

系統會提示你輸入密碼。驗證通過後,你會看到類似下表的內容:

Loaded plugins: langpacks, product-id, search-disabled-repos
ID | Login user   | Date and time    | Action(s)   | Altered
------------------------------------------------------------
48 | System <unset> | 2021-04-14 15:00 | Update     | 10 <
47 | System <unset> | 2021-04-08 09:50 | E, I, U    | 45 >E
46 | Jose ... <jose>| 2021-04-07 15:47 | Install    | 23
45 | Jose ... <jose>| 2021-04-06 08:57 | Install    | 1

輸出內容中的主要欄位:

  • ID:交易 ID,每項操作都有唯一的 ID。
  • 登入使用者:發起交易的使用者。
  • 日期與時間:交易發生的時間。
  • 動作:執行的動作類型,例如Install、Update或Erase。
  • 已變更:受該交易影響的軟體套件數量。

檢視特定交易的詳細資訊

若要取得特定交易的更多詳細資訊,請將其交易 ID 與下列命令搭配使用:

sudo yum history info <Transaction ID>

例如,若要檢視交易 ID 41 的詳細資訊:

sudo yum history info 41

這將輸出該交易的詳細資訊,例如:

Transaction ID : 41
Begin time     : Wed Mar 24 16:01:29 2021
End time       : 16:01:30 2021 (1 seconds)
User           : Jose Andres Navarro Varela <jose>
Command Line   : -y install openvpn
Transaction performed with:
    Installed rpm-4.11.3-45.el7.x86_64 @RHEL-79-x86_64
    Installed yum-3.4.3-168.el7.noarch @RHEL-79-x86_64
Packages Altered:
    Install openvpn-2.4.10-1.el7.x86_64 @epel
    Dep-Install pkcs11-helper-1.11-3.el7.x86_64 @epel
Return-Code : Success

這些資訊可以清楚顯示該交易期間安裝或更新了哪些內容。


復原交易

如果需要復原某個特定交易,可以使用下列命令:

sudo yum history undo <Transaction ID>

例如,若要復原交易 ID 41:

sudo yum history undo 41

這將還原該交易期間所做的變更。請注意,某些交易可能無法完全還原,尤其是當後續交易相依於它們時。


實際使用案例:yum history

  • 排查軟體套件問題:確認有問題的軟體套件是何時安裝或更新的。
  • 稽核變更:追蹤誰在何時對系統做了變更。
  • 復原更新:復原失敗或不必要的更新。
  • 軟體套件相依性管理:了解交易期間安裝或移除的相依性。

其他資源

如需了解更多資訊,請參閱官方 Yum 文件:


結論

yum history命令是管理 Linux 系統上軟體套件安裝與更新並進行故障排查的重要工具。善用其功能,你可以更好地掌控系統的軟體套件管理,並確保整個環境的穩定性。

發表留言