Oracle® Solaris 11.2의 소프트웨어 추가 및 업데이트

인쇄 보기 종료

업데이트 날짜: 2014년 7월
 
 

통합에서 지정한 버전 제약 조건 완화

통합 패키지는 어떤 버전의 패키지를 설치할 수 있는지 지정합니다. 이러한 버전 제약 조건은 시스템이 업데이트 간에 지원 가능한 상태로 유지되도록 도와줍니다. 통합 패키지 및 제약 조건에 대한 자세한 내용은 통합 패키지를 참조하십시오.

일부 통합된 패키지는 통합에서 지정한 버전과 다른 버전으로 다운그레이드하거나 업그레이드해도 됩니다. 버전 제약 조건은 통합 패키지에 지정된 version-lock.package 페이싯으로 표현됩니다. version-lock.package 페이싯의 기본값은 true입니다. 패키지에 대한 버전 제약 조건을 완화하려면 version-lock. 페이싯 값을 false로 설정합니다.

다음 예제에서 패키지의 이전 버전으로 다운그레이드하려고 합니다. pkg update 명령은 패키지를 업그레이드할 뿐 아니라 다운그레드하기도 합니다.

$ pkg list -af library/security/openssl
NAME (PUBLISHER)                    VERSION                    IFO
library/security/openssl            1.0.1.5-0.175.2.0.0.24.0  i--
library/security/openssl            1.0.1.5-0.175.2.0.0.23.0  --- 
$ pkg update library/security/openssl@1.0.1.5-0.175.2.0.0.23.0
Creating Plan (Solver setup): |
pkg update: No matching version of library/security/openssl can be installed:
  Reject: pkg://solaris/library/security/openssl@1.0.1.5,5.11-0.175.2.0.0.23.0:20130916T191702Z 
  Reason:  This version is excluded by installed incorporation 
  pkg://solaris/consolidation/userland/userland-incorporation@0.5.11,5.11-0.175.2.0.0.24.0:20131001T160408Z

pkg contents 명령은 이 버전 제약 조건이 어떻게 설정되었는지 보여줍니다. 이 패키지에 대한 버전 제약 조건을 완화하려면 version-lock 페이싯을 false로 설정합니다. 그런 다음 다시 다운그레이드해 봅니다. 새 BE가 생성되지 않고 백업 BE가 생성됩니다. BE 생성 시점에 대한 자세한 내용은 부트 환경 정책 이미지 등록 정보를 참조하십시오.

$ pkg contents -m userland-incorporation | grep 'library/security/openssl'
depend facet.version-lock.library/security/openssl=true 
fmri=pkg:/library/security/openssl@1.0.1.5-0.175.2.0.0.24.0 type=incorporate
$ pkg change-facet facet.version-lock.library/security/openssl=false
            Packages to update: 850
     Variants/Facets to change:   1
       Create boot environment:  No
Create backup boot environment: Yes

PHASE                                          ITEMS
Removing old actions                             1/1
Updating image state                            Done
Creating fast lookup database                   Done
Reading search index                            Done
Building new search index                    850/850
$ pkg update library/security/openssl@1.0.1.5-0.175.2.0.0.23.0
            Packages to update:   1
       Create boot environment:  No
Create backup boot environment: Yes

DOWNLOAD                                  PKGS       FILES    XFER (MB)   SPEED
Completed                                  1/1       10/10      1.6/1.6    0B/s

PHASE                                          ITEMS
Removing old actions                             3/3
Installing new actions                           3/3
Updating modified actions                      14/14
Updating package state database                 Done
Updating package cache                           1/1
Updating image state                            Done
Creating fast lookup database                   Done
Reading search index                            Done
Updating search index                            1/1
$ pkg list library/security/openssl
NAME (PUBLISHER)                    VERSION                   IFO
library/security/openssl            1.0.1.5-0.175.2.0.0.23.0  i--

이 패키지가 다운그레이드나 업그레이드되지 않게 하려면 패키지를 현재 버전에 고정합니다. 패키지 목록에서 "f"는 패키지가 고정되었음을 나타냅니다.

$ pkg freeze -c "Downgrade to avoid bug" library/security/openssl
library/security/openssl was frozen at 1.0.1.5,5.11-0.175.2.0.0.23.0:20130916T191702Z
$ pkg list library/security/openssl
NAME (PUBLISHER)                    VERSION                   IFO
library/security/openssl            1.0.1.5-0.175.2.0.0.23.0  if-

다운그레이드 또는 업그레이드를 다시 사용으로 설정하려면 pkg unfreeze 명령을 사용하여 버전 고정을 제거합니다. 패키지가 통합 패키지에 지정된 버전보다 낮은 버전으로 설치된 경우 이 패키지의 version-lock 페이싯을 true로 설정하면 통합 패키지에 지정된 버전이 설치됩니다.

설치된 다른 패키지가 다운그레이드 또는 업그레이드할 패키지와 require 종속성 관계가 있는 경우 이러한 관련 패키지에 대한 버전 제약 조건도 해제해야 합니다. 다음 예제에서 hexedit 패키지에 대한 버전 제약 조건이 제거되었지만 system/library 패키지에 대한 버전 제약 조건 때문에 설치가 거부됩니다.

$ pkg install editor/hexedit@1.2.12-0.175.2.0.0.25.0
Creating Plan (Solver setup): -
pkg install: No matching version of editor/hexedit can be installed:
  Reject: pkg://solaris/editor/hexedit@1.2.12-0.175.2.0.0.25.0:20131014T170634Z
  Reason:  All versions matching 'require' dependency 
  pkg:/system/library@0.5.11,5.11-0.175.2.0.0.24.0 are rejected
    Reject: pkg://solaris/system/library@0.5.11,5.11-0.175.2.0.0.24.0:20131001T152820Z

pkg://solaris/system/library@0.5.11,5.11-0.175.2.0.0.25.0:20131014T161136Z
    Reason:  This version is excluded by installed incorporation 
    pkg://solaris/consolidation/osnet/osnet-incorporation@0.5.11,5.11-0.175.2.0.0.24.0:20131001T150429Z

개별 구성 요소 패키지 외에 통합에 대한 버전 제약 조건도 해제할 수 있습니다. 이 경우 version-lock 페이싯을 false 로 설정하면 나머지 시스템에서 통합의 잠금을 해제할 수 있습니다. 통합 패키지의 잠금이 해제되어도 여기에 통합되는 패키지는 계속 동기화됩니다.