Fedora

“dnf 歷史回滾”和“dnf 歷史撤消”有什麼區別?

  • April 21, 2021

讓我們閱讀官方文件

dnf history rollback <transaction-spec> 撤消在指定事務之後執行的所有事務。如果由於 RPMDB 的目前狀態而無法撤消任何事務,請不要撤消任何事務。

重點是我的。所以這個命令指的是undo命令。好的,讓我們閱讀有關撤消的文件:

dnf history undo <transaction-spec> 對指定事務中執行的所有操作執行相反的操作。如果由於 RPMDB 的目前狀態而無法撤消任何操作,請不要撤消任何操作。

聽起來這兩個命令做的事情相同,只是前者可以撤消多個事務,而後者只能撤消一個。

這種理解正確嗎?(我希望從第一手經驗中獲得答案,而不是從您如何解釋手冊的角度來看,我對事實感興趣,而不是猜測。)

上下文:我需要編寫一個腳本來執行dnf upgrade -y,然後執行一些測試,然後如果測試失敗則*反轉 dnf 更改。*我正在尋找實現這一目標的最佳方法。

undo僅撤消該特定事務,而rollback撤消該事務與系統目前狀態之間的所有內容。

範例:您安裝htop,然後安裝ncduand glances,然後是mc第二天。

您稍後想要撤消安裝 htop,因此您使用撤消功能嘗試撤消安裝 htop,但仍保留您稍後安裝的其他程序。

如果您回滾到已安裝的事務,htop則改為撤消 和 的安裝,ncdu同時仍保留.glances``mc``htop

引用自:https://unix.stackexchange.com/questions/349238