9.4. 트랜잭션 내역 작업


yum history 명령을 사용하면 사용자가 yum 트랜잭션의 타임라인, 날짜 및 시간, 이러한 트랜잭션이 성공 또는 중단되었는지 여부, 트랜잭션 간에 RPM 데이터베이스가 변경되었는지 여부를 확인할 수 있습니다. 또한 이 명령을 사용하여 특정 트랜잭션을 취소하거나 다시 실행할 수 있습니다. 모든 기록 데이터는 /var/lib/yum/history/ 디렉터리 의 기록 DB에 저장됩니다.

9.4.1. 트랜잭션 나열

20개의 최근 트랜잭션 목록을 root 로 표시하려면 추가 인수 없이 yum history 를 실행하거나 쉘 프롬프트에서 다음을 입력합니다.

yum history list

모든 트랜잭션을 표시하려면 all 키워드를 추가합니다.

yum history list all

지정된 범위의 트랜잭션만 표시하려면 다음 양식에서 명령을 사용합니다.

yum history list start_id..end_id

특정 패키지 또는 패키지와 관련된 트랜잭션만 나열할 수도 있습니다. 이렇게 하려면 패키지 이름 또는 glob 표현식과 함께 명령을 사용합니다.

yum history list glob_expression…

예 9.19. 가장 오래된 5개의 트랜잭션 나열

yum history list 의 출력에서 가장 최근 트랜잭션은 목록 상단에 표시됩니다. 기록 데이터 베이스에 저장된 5개의 가장 오래된 트랜잭션에 대한 정보를 표시하려면 다음을 입력합니다.

~]# yum history list 1..5
Loaded plugins: langpacks, product-id, subscription-manager
ID   | Login user        | Date and time  | Action(s)   | Altered
-------------------------------------------------------------------------------
   5 | User <user>       | 2013-07-29 15:33 | Install    |  1
   4 | User <user>       | 2013-07-21 15:10 | Install    |  1
   3 | User <user>       | 2013-07-16 15:27 | I, U      |  73
   2 | System <unset>      | 2013-07-16 15:19 | Update     |  1
   1 | System <unset>      | 2013-07-16 14:38 | Install    | 1106
history list

모든 형태의 yum history list 명령은 다음 열로 구성된 각 행이 있는 테이블 형식 출력을 생성합니다.

  • 특정 트랜잭션을 식별하는 정수 값입니다.An integer value that identifies a particular transaction.
  • login 사용자 - 트랜잭션을 시작하는 데 로그인 세션이 사용된 사용자의 이름입니다. 이 정보는 일반적으로 전체 이름 <username> 형식으로 제공됩니다. 사용자가 발행하지 않은 트랜잭션(예: 자동 시스템 업데이트)의 경우 시스템 <unset> 이 대신 사용됩니다.
  • 날짜 및 시간 - 트랜잭션이 실행된 날짜 및 시간입니다.
  • 작업 - 표 9.1. “Action(s) 필드의 가능한 값” 설명된 대로 트랜잭션 중에 수행된 작업 목록입니다.
  • 변경된 사항 - 트랜잭션의 영향을 받는 패키지 수, 표 9.2. “대체 필드의 가능한 값” 에 설명된 대로 추가 정보가 올 수 있습니다.
Expand
표 9.1. Action(s) 필드의 가능한 값
동작약어설명

downgrade

D

하나 이상의 패키지가 이전 버전으로 다운그레이드되었습니다.

압축 풀기

E

하나 이상의 패키지가 제거되었습니다.

install

I

새 패키지가 하나 이상 설치되어 있어야 합니다.

Obsoleting

O

하나 이상의 패키지가 더 이상 사용되지 않음으로 표시되었습니다.

reinstall

R

하나 이상의 패키지가 다시 설치되어 있어야 합니다.

update

U

하나 이상의 패키지가 최신 버전으로 업데이트되었습니다.

Expand
표 9.2. 대체 필드의 가능한 값
symbol설명

<

트랜잭션이 완료되기 전에 rpmdb 데이터베이스가 yum 외부에서 변경되었습니다.

>

트랜잭션이 완료되면 rpmdb 데이터베이스가 yum 외부에서 변경되었습니다.

*

트랜잭션이 완료되지 못했습니다.

#

트랜잭션이 성공적으로 완료되었지만 yum은 0이 아닌 종료 코드를 반환했습니다.

E

트랜잭션이 성공적으로 완료되었지만 오류 또는 경고가 표시되었습니다.

P

트랜잭션이 성공적으로 완료되었지만 rpmdb 데이터베이스에 문제가 이미 발생했습니다.

트랜잭션이 성공적으로 완료되었지만 --skip-broken 명령줄 옵션이 사용되었으며 특정 패키지를 건너뛰었습니다.

현재 사용된 rpmdb 또는 yumdb 데이터베이스와 설치된 패키지의 rpmdb 또는 yumdb 데이터베이스 내용을 동기화하려면 다음을 입력합니다.

yum history sync

현재 사용된 기록 데이터베이스에 대한 몇 가지 전체 통계를 표시하려면 다음 명령을 사용합니다.

yum history stats

예 9.20. yum 기록 통계의 출력 예

~]# yum history stats
Loaded plugins: langpacks, product-id, subscription-manager
File    : //var/lib/yum/history/history-2012-08-15.sqlite
Size    : 2,766,848
Transactions: 41
Begin time : Wed Aug 15 16:18:25 2012
End time  : Wed Feb 27 14:52:30 2013
Counts   :
 NEVRAC : 2,204
 NEVRA : 2,204
 NA   : 1,759
 NEVR  : 2,204
 rpm DB : 2,204
 yum DB : 2,204
history stats

또한 yum을 사용하면 모든 과거의 트랜잭션에 대한 요약을 표시할 수 있습니다. 이렇게 하려면 root 로 다음 형태로 명령을 실행합니다.

yum history summary

지정된 범위의 트랜잭션만 표시하려면 다음을 입력합니다.

yum history summary start_id..end_id

yum history list 명령과 마찬가지로 패키지 이름 또는 glob 표현식을 제공하여 특정 패키지 또는 패키지와 관련된 트랜잭션 요약을 표시할 수도 있습니다.

yum history summary glob_expression&hellip;

예 9.21. 최신 5개의 트랜잭션 요약

~]# yum history summary 1..5
Loaded plugins: langpacks, product-id, subscription-manager
Login user         | Time        | Action(s)    | Altered
-------------------------------------------------------------------------------
Jaromir ... <jhradilek>  | Last day      | Install     |    1
Jaromir ... <jhradilek>  | Last week      | Install     |    1
Jaromir ... <jhradilek>  | Last 2 weeks    | I, U       |    73
System <unset>       | Last 2 weeks    | I, U       |   1107
history summary

모든 형태의 yum history summary 명령은 yum history list 의 출력과 유사한 단순화된 테이블 출력을 생성합니다.

위에 표시된 대로 yum history listyum history summary 은 모두 트랜잭션을 지향하지만 지정된 패키지 또는 패키지와 관련된 트랜잭션만 표시할 수 있지만 패키지 버전과 같은 중요한 세부 사항은 표시되지 않습니다. 패키지 관점에서 트랜잭션을 나열하려면 root 로 다음 명령을 실행합니다.

yum history package-list glob_expression&hellip;

예 9.22. 패키지 기록 추적

예를 들어 subscription-manager 및 관련 패키지의 기록을 추적하려면 쉘 프롬프트에서 다음을 입력합니다.

~]# yum history package-list subscription-manager\*
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
ID   | Action(s)   | Package
-------------------------------------------------------------------------------
   2 | Updated    | subscription-manager-1.13.22-1.el7.x86_64     EE
   2 | Update     |           1.15.9-15.el7.x86_64     EE
   2 | Obsoleted   | subscription-manager-firstboot-1.13.22-1.el7.x86_64 EE
   2 | Updated    | subscription-manager-gui-1.13.22-1.el7.x86_64   EE
   2 | Update     |             1.15.9-15.el7.x86_64   EE
   2 | Obsoleting   | subscription-manager-initial-setup-addon-1.15.9-15.el7.x86_64 EE
   1 | Install    | subscription-manager-1.13.22-1.el7.x86_64
   1 | Install    | subscription-manager-firstboot-1.13.22-1.el7.x86_64
   1 | Install    | subscription-manager-gui-1.13.22-1.el7.x86_64
history package-list

이 예에서는 초기 시스템 설치 중에 3개의 패키지( subscription-manager , subscription-manager -firstboot , subscription-manager-firstboot, subscription-manager-gui )가 설치되었습니다. 세 번째 트랜잭션에서는 이러한 패키지가 1.10.11 버전에서 1.10.17 버전으로 업데이트되었습니다.

9.4.2. 트랜잭션 검사

단일 트랜잭션 요약을 root 로 표시하려면 다음 형식으로 yum history summary 명령을 사용합니다.

yum history summary id

여기서 id 는 트랜잭션의 ID입니다.

특정 트랜잭션 또는 트랜잭션을 보다 자세히 검사하려면 root 로 다음 명령을 실행하십시오.

yum history info id&hellip;

id 인수는 선택 사항이며 생략하면 yum은 마지막 트랜잭션을 자동으로 사용합니다. 둘 이상의 트랜잭션을 지정할 때 범위를 사용할 수도 있습니다.

yum history info start_id..end_id

예 9.23. yum history info의 출력 예

다음은 두 개의 트랜잭션에 대한 샘플 출력이며 각각 하나의 새 패키지를 설치합니다.

~]# yum history info 4..5
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
Transaction ID : 4..5
Begin time   : Mon Dec 7 16:51:07 2015
Begin rpmdb  : 1252:d2b62b7b5768e855723954852fd7e55f641fbad9
End time    :      17:18:49 2015 (27 minutes)
End rpmdb   : 1253:cf8449dc4c53fc0cbc0a4c48e496a6c50f3d43c5
User      : Maxim Svistunov <msvistun>
Return-Code  : Success
Command Line  : install tigervnc-server.x86_64
Command Line  : reinstall tigervnc-server
Transaction performed with:
  Installed   rpm-4.11.3-17.el7.x86_64         @rhel-7-server-rpms
  Installed   subscription-manager-1.15.9-15.el7.x86_64 @rhel-7-server-rpms
  Installed   yum-3.4.3-132.el7.noarch         @rhel-7-server-rpms
Packages Altered:
  Reinstall tigervnc-server-1.3.1-3.el7.x86_64 @rhel-7-server-rpms
history info

트랜잭션 시 사용된 구성 옵션 또는 리포지토리 및 특정 패키지가 설치된 이유와 같은 추가 정보를 볼 수도 있습니다. 특정 트랜잭션에 사용할 수 있는 추가 정보를 확인하려면 루트로 쉘 프롬프트에 다음을 입력합니다.

yum history addon-info id

yum history info 와 유사하게 id 가 제공되지 않으면 yum은 latest 트랜잭션을 자동으로 사용합니다. 최신 트랜잭션을 참조하는 또 다른 방법은 마지막 키워드를 사용하는 것입니다.

yum history addon-info last

예 9.24. yum history addon-info의 출력 예

기록의 네 번째 트랜잭션의 경우 yum history addon-info 명령은 다음 출력을 제공합니다.

~]# yum history addon-info 4
Loaded plugins: langpacks, product-id, subscription-manager
Transaction ID: 4
Available additional history information:
 config-main
 config-repos
 saved_tx

history addon-info

yum history addon-info 명령의 출력에서 다음 세 가지 유형의 정보를 사용할 수 있습니다.

  • config-main - 트랜잭션 중에 사용 중인 글로벌 yum 옵션. 글로벌 옵션을 변경하는 방법에 대한 자세한 내용은 9.5.1절. “[main] 옵션 설정” 을 참조하십시오.
  • config-repos - 개별 yum 리포지토리에 대한 옵션 개별 리포지토리의 옵션을 변경하는 방법에 대한 자세한 내용은 9.5.2절. “[repository] 옵션 설정” 을 참조하십시오.
  • saved_tx - 다른 시스템에서 트랜잭션을 반복하기 위해 yum load- hiera 명령에서 사용할 수 있는 데이터입니다(아래 참조).

선택한 유형의 추가 정보를 표시하려면 root 로 다음 명령을 실행합니다.

yum history addon-info id information

9.4.3. 트랜잭션 복원 및 종료

트랜잭션 내역을 검토하는 것 외에도 yum history 명령은 선택한 트랜잭션을 되돌리거나 반복할 수 있는 수단을 제공합니다. 트랜잭션을 되돌리려면 쉘 프롬프트에서 root 로 다음을 입력합니다.

yum history undo id

특정 트랜잭션을 root 로 반복하려면 다음 명령을 실행합니다.

yum history redo id

두 명령 모두 마지막 키워드를 수락하여 최신 트랜잭션을 취소하거나 반복합니다.

yum history undoyum history 명령을 둘 다 트랜잭션 중에 수행된 단계를 되돌리거나 반복합니다. 트랜잭션이 새 패키지를 설치한 경우 yum history undo 명령에서 해당 패키지를 제거하고 트랜잭션이 패키지를 제거한 경우 명령이 다시 설치합니다. 또한 이 명령은 이러한 이전 패키지를 계속 사용할 수 있는 경우 업데이트된 모든 패키지를 이전 버전으로 다운그레이드하려고 합니다.

동일한 시스템을 여러 개 관리할 때 yum을 사용하면 해당 시스템에서 트랜잭션을 수행하여 트랜잭션 세부 사항을 파일에 저장하고 테스트 기간 후에 나머지 시스템에서 동일한 트랜잭션을 반복할 수 있습니다. 트랜잭션 세부 정보를 파일에 저장하려면 쉘 프롬프트에서 root 로 다음을 입력합니다.

yum -q history addon-info id saved_tx > file_name

이 파일을 대상 시스템에 복사하면 root 로 다음 명령을 사용하여 트랜잭션을 반복할 수 있습니다.

yum load-transaction file_name

누락된 패키지 또는 rpmdb 버전 을 무시하도록 로드 비트랜젝션 을 구성할 수 있습니다. 이러한 구성 옵션에 대한 자세한 내용은 yum.conf(5) 매뉴얼 페이지를 참조하십시오.

9.4.4. 새 트랜잭션 내역 시작

yum은 트랜잭션 기록을 단일 SQLite 데이터베이스 파일에 저장합니다. 새 트랜잭션 기록을 시작하려면 root 로 다음 명령을 실행합니다.

yum history new

그러면 /var/lib/yum/history/ 디렉토리에 비어 있는 새 데이터베이스 파일이 생성됩니다. 이전 트랜잭션 기록은 유지되지만 최신 데이터베이스 파일이 디렉터리에 있는 동안에는 액세스할 수 없습니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동