JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris 11 ソフトウェアパッケージの追加および更新     Oracle Solaris 11 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

1.  Image Packaging System の概要

2.  IPS のグラフィカルユーザーインタフェース

3.  ソフトウェアパッケージに関する情報の取得

4.  ソフトウェアパッケージのインストールおよび更新

5.  インストールされるイメージの構成

発行元の構成

発行元情報の表示

パッケージ発行元の追加、変更、削除

指定したバージョンへのパッケージのロック

回避するパッケージのマーキング

省略可能なコンポーネントのインストールの制御

バリアントの表示

バリアントの変更

ファセットの表示

ファセットの変更

イメージの更新

イメージと発行元のプロパティーの構成

ブート環境ポリシーイメージのプロパティー

パッケージの署名のプロパティー

署名付きパッケージのイメージプロパティー

署名付きパッケージの発行元プロパティー

パッケージの署名プロパティーの構成

追加のイメージのプロパティー

イメージのプロパティーの設定

イメージプロパティーの値の表示

イメージプロパティーの値の設定

イメージプロパティーの値のリセット

イメージの作成

操作履歴の表示

省略可能なコンポーネントのインストールの制御

ソフトウェアには、省略可能なコンポーネントや、相互に排他的なコンポーネントが含まれることがあります。省略可能なコンポーネントの例には、ロケールやドキュメントがあります。相互に排他的なコンポーネントの例には、SPARC バイナリと x86 バイナリや、デバッグバイナリと非デバッグバイナリなどがあります。IPS では、省略可能なコンポーネントをファセット、相互に排他的なコンポーネントをバリアントと呼びます。

ファセットとバリアントはイメージの特殊なプロパティーであり、個々のパッケージには設定できません。イメージに設定されているファセットとバリアントの現在の値を表示するには、pkg facet コマンドと pkg variant コマンドを使用します。イメージに設定されているファセットとバリアントの現在の値を変更するには、pkg change-facet コマンドと pkg change-variant コマンドを使用します。pkg(1) のマニュアルページと下の例を参照してください。

ファセットとバリアントはパッケージアクションのタグとして指定します。各ファセットタグおよびバリアントタグには名前と値があります。1 つのアクションに複数のファセットタグおよびバリアントタグを付けることができます。複数のファセットタグやバリアントタグが付くコンポーネントの例として、開発者によって使用されるアーキテクチャー固有のヘッダーファイルや SPARC 大域ゾーン専用のコンポーネントがあります。

バリアントタグの例は variant.arch=sparc です。ファセットタグの例は facet.devel=true です。ファセットとバリアントは、facet.variant. を先頭に付けずに参照されることがあります。

ファセットはブール型です。それらには true (有効) または false (無効) のみ設定できます。デフォルトで、イメージ内のすべてのファセットは、true に設定されていると見なされます。アクションのファセットタグの値には true のみを指定すべきであり、それ以外の値では動作が不確定になります。イメージに設定されるファセットは、doc.man などの完全なファセットか、locale.* などのパターンになります。これは、ファセット名前空間の一部を無効にし、その中の個々のファセットのみを有効にする場合に役立ちます。たとえば、次の例に示すように、すべてのロケールを無効にしてから、1 つか 2 つの特定のロケールのみを有効にすることができます。

# pkg change-facet locale.*=false
[output about packages being updated]
# pkg change-facet locale.en_US=true
[output about packages being updated]

ほとんどのバリアントは任意の数の値を設定できます。たとえば、arch バリアントには、i386sparcppcarm、またはディストリビューションでサポートされているどんなアーキテクチャーでも設定できます。(Oracle Solaris では i386 および sparc のみ使用されます。)例外は debug バリアントです。debug バリアントには、true または false のみを設定でき、ほかの値では動作が不確定になります。ファイルアクションに非デバッグバージョンとデバッグバージョンの両方がある場合、次の例に示すように、両方のバージョンに該当する debug バリアントが明示的に設定されている必要があります。

file group=sys mode=0644 overlay=allow owner=root \
  path=etc/motd pkg.csize=115 pkg.size=103 preserve=true \
  variant.debug.osnet=true

file group=sys mode=0644 overlay=allow owner=root \
  path=etc/motd pkg.csize=68 pkg.size=48 preserve=true \
  variant.debug.osnet=false 

バリアントを使用するパッケージをインストールするために、バリアント値をイメージに設定する必要があります。arch および zone バリアントは、イメージを作成し、その初期コンテンツをインストールするプログラムによって設定されます。イメージ内の debug.* バリアントは、デフォルトで false です。

イメージに設定されたファセットとバリアントは、特定のアクションがインストールされるかどうかに影響します。

独自のファセットおよびバリアントタグを作成できます。Oracle Solaris では、次のタグが一般に使用されます。

バリアント名
取り得る値
variant.arch
sparci386
variant.opensolaris.zone
globalnonglobal
variant.debug.*
truefalse

次のリストに、Oracle Solaris で使用される小さなファセットタグの例を示します。

facet.devel             facet.doc
facet.doc.html          facet.doc.info
facet.doc.man           facet.doc.pdf
facet.locale.de         facet.locale.en_GB
facet.locale.en_US      facet.locale.fr
facet.locale.ja_JP      facet.locale.zh_CN

現在のイメージに設定されているバリアントとファセットの値を表示し、現在のイメージのバリアントとファセットを変更できます。バリアントとファセットを変更すると、多数のパッケージが更新され、新しい BE が必要になることがあります。変更する前に、どのような変更が行われるかを確認するには、-nv を使用します。

バリアントの表示

設定されているバリアントの値を表示するには、pkg variant コマンドを使用します。

/usr/bin/pkg variant [-H] [variant_spec ...] 
$ pkg variant
VARIANT                  VALUE
variant.opensolaris.zone global
variant.arch             i386
$ pkg variant -H variant.arch
variant.arch i386

バリアントの変更

バリアントの値を変更するには、pkg change-variant コマンドを使用します。

/usr/bin/pkg change-variant [-nvq] [-g path_or_uri ...]
    [--accept] [--licenses] [--no-be-activate]
    [--no-backup-be | --require-backup-be] [--backup-be-name name]
    [--deny-new-be | --require-new-be] [--be-name name]
    variant_spec=instance ...

次のコマンドは、多数のパッケージが影響を受けるため、大量の出力が生成されます。新しい BE はデフォルトで作成されませんが、バックアップ BE が作成される可能性があります。BE が作成される状況については、「ブート環境ポリシーイメージのプロパティー」を参照してください。

-n オプションを使用すると、実際の変更を行わずに、この操作を -n なしで実行した場合に何が変更されるかを確認できます。

# pkg change-variant -nv --accept variant.debug.*=true
            Packages to update:       831
     Variants/Facets to change:         4
     Estimated space available: 112.19 GB
Estimated space to be consumed: 220.76 MB
       Create boot environment:        No
Create backup boot environment:       Yes
          Rebuild boot archive:        No
Changed variants/facets:
  variant variant.debug.*: true
    facet facet.locale.en_US: None
    facet facet.locale.en: None
    facet facet.locale.*: None
Changed packages:
solaris
  ...

ファセットの表示

設定されているファセットの値を表示するには、pkg facet コマンドを使用します。

/usr/bin/pkg facet [-H] [facet_spec ...]
$ pkg facet
FACETS             VALUE
facet.locale.en_US True
facet.locale.en    True
facet.locale.*     False
$ pkg facet -H facet.locale.*
facet.locale.* False

ファセットの変更

ファセットの値を変更するには、pkg change-facet コマンドを使用します。

/usr/bin/pkg change-facet [-nvq] [-g path_or_uri ...]
    [--accept] [--licenses] [--no-be-activate]
    [--no-backup-be | --require-backup-be] [--backup-be-name name]
    [--deny-new-be | --require-new-be] [--be-name name] 
    facet_spec=[True|False|None] ...

-n オプションを使用すると、実際の変更を行わずに、この操作を -n なしで実行した場合に何が変更されるかを確認できます。

ファセットの値を None に設定すると、ファセットの仕様が現在のイメージから削除されます。

次のコマンドは、多数のパッケージが影響を受けるため、大量の出力が生成されます。使用される追加の領域の量は M バイトではなく、G バイト単位です。この操作には、長い時間を必要とする可能性があり、このイメージとパッケージリポジトリ間で大量のネットワークトラフィックが発生する可能性があります。新しい BE はデフォルトで作成されませんが、バックアップ BE が作成される可能性があります。BE が作成される状況については、「ブート環境ポリシーイメージのプロパティー」を参照してください。

# pkg change-facet -nv facet.locale.*=true
            Packages to update:       831
     Variants/Facets to change:         1
     Estimated space available: 112.19 GB
Estimated space to be consumed:   2.96 GB
       Create boot environment:        No
Create backup boot environment:       Yes
          Rebuild boot archive:        No
Changed variants/facets:
    facet facet.locale.*: True
Changed packages:
solaris
  ...