Was ist der Unterschied zwischen "dnf history rollback" und "dnf history undo"?

14

Lesen wir die offizielle Dokumentation :

dnf history rollback <transaction-spec> Machen Sie alle Transaktionen rückgängig, die nach der angegebenen Transaktion ausgeführt wurden. Wenn es aufgrund des aktuellen Status von RPMDB nicht möglich ist, eine Transaktion rückgängig zu machen , machen Sie keine Transaktion rückgängig.

Der Schwerpunkt liegt bei mir. Dieser Befehl bezieht sich also auf den undoBefehl. Okay, lesen wir die Dokumentation zu Undo:

dnf history undo <transaction-spec> Führen Sie die entgegengesetzte Operation zu allen Operationen aus, die in der angegebenen Transaktion ausgeführt werden. Wenn es aufgrund des aktuellen Status von RPMDB nicht möglich ist, eine Operation rückgängig zu machen, machen Sie keine Operation rückgängig.

Es klingt so, als ob diese beiden Befehle dasselbe tun, mit der Ausnahme, dass der erstere mehrere Transaktionen rückgängig machen kann und der spätere nur eine.

Ist dieses Verständnis richtig? (Ich würde mich über Antworten aus erster Hand freuen, nicht darüber, wie Sie das Handbuch interpretieren . Ich bin an Fakten interessiert, nicht an Vermutungen.)

Kontext: Ich muss ein Skript schreiben, das ausgeführt wird dnf upgrade -yund dann einige Tests ausführt , und dann die DNF-Änderungen rückgängig machen, wenn die Tests fehlschlagen. Ich bin auf der Suche nach dem besten Weg, dies zu erreichen.

Andrew Savinykh
quelle

Antworten:

17

undomacht nur diese bestimmte Transaktion rollbackrückgängig , während alles zwischen dieser Transaktion und dem aktuellen Status des Systems rückgängig gemacht wird.

Beispiel: Sie installieren htopund anschließend ncduund glances, gefolgt vom mcnächsten Tag.

Sie möchten später die Installation von htop rückgängig machen, verwenden also die Funktion zum Rückgängigmachen, um die Installation von htop rückgängig zu machen, behalten jedoch die anderen Programme bei, die Sie später installiert haben.

Wenn Sie zurück in die Transaktion rückgängig gemacht, die installiert htop, dann würden Sie stattdessen rückgängig machen die Installation ncdu, glancesund mc, während nach wie vor zu halten htop.

Mio Rin
quelle
1
Ja, das habe ich auch so verstanden, wollte aber bestätigen, danke dafür! ;)
Andrew Savinykh