9.2. DNF トランザクションの取り消し
DNF トランザクションを元に戻すことは、トランザクション中に実行された操作を元に戻す場合に役立ちます。たとえば、dnf install コマンドを使用して複数のパッケージをインストールした場合は、インストールトランザクションを元に戻すことで、これらのパッケージを一度にアンインストールできます。
DNF トランザクションは次の方法で元に戻すことができます。
-
dnf history undoコマンドを使用して、単一の DNF トランザクションを元に戻します。 -
dnf history rollbackコマンドを使用して、指定されたトランザクションと最後のトランザクションの間に実行されたすべての DNF トランザクションを元に戻します。
dnf history undo コマンドと dnf history rollback コマンドを使用して RHEL システムパッケージを古いバージョンにダウングレードすることはサポートされていません。これは特に、selinux、selinux-policy-*、kernel、および glibc パッケージ、ならびに gcc などの glibc の依存関係に関係します。したがって、システムをマイナーバージョンにダウングレードすると (たとえば、RHEL 9.1 から RHEL 9.0 に)、システムが不正な状態になる可能性があるため、推奨されません。
9.2.1. 単一の DNF トランザクションを元に戻す リンクのコピーリンクがクリップボードにコピーされました!
dnf history undo コマンドを使用して、単一のトランザクション内で実行されたステップを元に戻すことができます。
-
このトランザクションで新しいパッケージがインストールされた場合は、
dnf history undoがそのパッケージをアンインストールします。 -
トランザクションでパッケージがアンインストールされた場合は、
dnf history undoがそのパッケージを再インストールします。 また、
dnf history undoコマンドは、古いパッケージが依然として利用可能な場合、更新されたすべてのパッケージを以前のバージョンにダウングレードしようとします。注記古いパッケージバージョンが利用できない場合は、
dnf history undoコマンドを使用したダウングレードは失敗します。
手順
元に戻すトランザクションの ID を特定します。
dnf history ID | Command line | Date and time | Action(s) | Altered -------------------------------------------------------------------- 13 | install zip | 2022-11-03 10:49 | Install | 1 12 | install unzip | 2022-11-03 10:49 | Install | 1
# dnf history ID | Command line | Date and time | Action(s) | Altered -------------------------------------------------------------------- 13 | install zip | 2022-11-03 10:49 | Install | 1 12 | install unzip | 2022-11-03 10:49 | Install | 1Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 詳細を表示して、これが元に戻す必要があるトランザクションであることを確認します。
dnf history info <transaction_id>
# dnf history info <transaction_id>Copy to Clipboard Copied! Toggle word wrap Toggle overflow トランザクションを元に戻します。
dnf history undo <transaction_id>
# dnf history undo <transaction_id>Copy to Clipboard Copied! Toggle word wrap Toggle overflow たとえば、以前にインストールした
unzipパッケージをアンインストールする場合は、次のように入力します。dnf history undo 12
# dnf history undo 12Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2.2. 複数の DNF トランザクションを元に戻す リンクのコピーリンクがクリップボードにコピーされました!
dnf history rollback コマンドを使用して、指定したトランザクションと最後のトランザクションの間に実行されたすべての DNF トランザクションを元に戻すことができます。トランザクション ID で指定されたトランザクションは変更されないことに注意してください。
手順
元に戻したい状態のトランザクション ID を特定します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 指定したトランザクションを元に戻す。
dnf history rollback <transaction_id>
# dnf history rollback <transaction_id>Copy to Clipboard Copied! Toggle word wrap Toggle overflow たとえば、
wgetおよびunzipパッケージがインストールされる前の状態に戻すには、次のように入力します。dnf history rollback 12
# dnf history rollback 12Copy to Clipboard Copied! Toggle word wrap Toggle overflow または、トランザクション履歴のすべてのトランザクションを元に戻すには、トランザクション ID 1 を使用します。
dnf history rollback 1
# dnf history rollback 1Copy to Clipboard Copied! Toggle word wrap Toggle overflow