본문 바로가기

dnf history undo로 방금 설치를 되돌리기

조회 0 · 댓글 0
강철지그강철지그작성자2026년 9월 9일

yum update 한 번에 여러 패키지가 딸려 올라가서 뭔가 깨졌을 때, 무엇을 지워야 할지 일일이 찾지 않아도 됩니다. RHEL 8, 9의 dnf는 트랜잭션 단위로 이력을 남겨서 통째로 되돌릴 수 있습니다. 먼저 이력과 상세 내역을 확인합니다.

# dnf history
# dnf history info <트랜잭션ID>

특정 트랜잭션 하나만 되돌리려면 undo를 씁니다. 그 트랜잭션이 설치한 패키지는 지우고, 지웠던 패키지는 다시 깔고, 업데이트했던 것은 이전 버전이 남아 있으면 다운그레이드합니다. 지정한 트랜잭션 이후의 모든 작업을 한꺼번에 되돌리려면 rollback이고, 이때 지정한 트랜잭션 자체는 그대로 둡니다.

# dnf history undo <트랜잭션ID>
# dnf history rollback <트랜잭션ID>

주의할 점이 있습니다. 되돌리려면 이전 버전 패키지가 저장소에 남아 있어야 하고, 시스템을 바꾸는 명령이니 되돌린 뒤 상태를 꼭 확인해야 합니다. 특히 공식 문서는 undo, rollback으로 selinux, selinux-policy-*, kernel, glibc, gcc 같은 시스템 패키지를 옛 버전으로 다운그레이드하는 것은 지원하지 않는다고 못박고 있습니다. 이런 패키지가 섞인 트랜잭션은 되돌리지 마십시오.

🔗 https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/9/html/managing_software_with_the_dnf_tool/assembly_handling-package-management-history_managing-software-with-the-dnf-tool

로그인 후 답글을 남길 수 있습니다.