명령어/Linux

[RHEL] dnf history 설치 이력 조회와 롤백

jykim23 2026. 7. 15. 12:01
반응형

부제: 과거 트랜잭션을 기록하고, 통째로 되돌린다

dnf history                # 트랜잭션 목록
dnf history info 14        # 특정 트랜잭션 상세
dnf history undo 14        # 그 트랜잭션 되돌리기
$ dnf history
ID     | Command line             | Date and time    | Action(s)      | Altered
-------------------------------------------------------------------------------
    14 | install -y rear          | 2026-07-14 14:41 | Install        |   18
    13 | install -y scap-security | 2026-07-14 14:41 | Install        |    2
    12 | install -y openscap-scan | 2026-07-14 14:41 | Install        |    6
    11 | install -y usbguard      | 2026-07-14 14:41 | Install        |    3

dnf history는 설치·삭제·업데이트 트랜잭션을 전부 기록하고, 원하는 시점으로 되돌리는 기능이다. 데비안 apt에는 없는 강력한 무기다. apt는 로그만 남기고 원자적 롤백을 기본 제공하지 않지만, dnf는 트랜잭션 단위로 undo·rollback이 가능하다. 업데이트 후 문제가 생기면 이력을 보고 딱 그 변경만 되돌릴 수 있다.

이렇게도 쓴다

특정 트랜잭션에서 무슨 패키지가 바뀌었는지 상세히 본다.

dnf history info 14

 

특정 패키지가 얽힌 트랜잭션만 추적한다.

dnf history list nginx

 

방금 한 설치를 되돌린다(마지막 트랜잭션).

dnf history undo last

 

특정 시점 이후의 모든 변경을 통째로 롤백한다.

dnf history rollback 10

 

가장 최근 트랜잭션 번호를 뽑아 바로 상세 조회한다(파이프+명령치환 조합).

dnf history info $(dnf history | awk 'NR==3{print $1}')

 

되돌렸던 트랜잭션을 다시 실행한다.

dnf history redo 14
반응형