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.  インストールされるイメージの構成

パッケージのインストールおよび更新

pkg install コマンドは、現在インストールされていないパッケージをインストールし、すでにインストールされているパッケージを更新します。pkg install コマンドには 1 つ以上のパッケージ名を指定する必要があります。

pkg update コマンドは、インストール済みのパッケージを更新します。pkg update コマンドにまだインストールされていないパッケージを指定すると、システムはそのパッケージをインストールしません。pkg update コマンドには、すでにインストールされているパッケージの名前を 0 個以上指定します。パッケージ名を指定しないと、イメージにインストールされているすべてのパッケージが更新されます。

インストールおよび更新時に、preserve 属性と overlay 属性を持つファイルがどのように処理されるかについては、pkg(5) のマニュアルページの file アクションのそれぞれの属性を参照してください。

ブート環境オプション

パッケージをインストール、更新、またはアンインストールするか、ファイルを元に戻した場合に、新しい BE またはバックアップ BE が作成されることがあります。BE に関するイメージポリシーの制約内で、下に示すオプションを使用して、新しい BE とバックアップ BE の作成を制御できます。新しい BE とバックアップ BE について、および BE に関するイメージポリシーの設定方法については、「ブート環境ポリシーイメージのプロパティー」を参照してください。

BE オプションを使用して、新しい BE またはバックアップ BE を作成するかどうかを強制したり、BE にカスタム名を指定したり、新しい BE をアクティブにしないように指定したりします。

--no-be-activate

BE が作成される場合に、それを次回ブート時にアクティブ BE として設定しません。アクティブ BE を表示および変更するには、beadm(1M) コマンドを使用します。

--no-backup-be

バックアップ BE を作成しません。

--require-backup-be

新しい BE が作成されない場合に、バックアップ BE を作成します。このオプションを指定しないと、イメージポリシーに基づいてバックアップ BE が作成されます。バックアップ BE が自動的に作成される状況の説明については、「ブート環境ポリシーイメージのプロパティー」を参照してください。

--backup-be-name name

バックアップ BE が作成される場合に、デフォルトの名前ではなく、name という名前を付けます。--backup-be-name を使用すると --require-backup-be が暗黙的に指定されます。

--deny-new-be

新しい BE を作成しません。新しい BE が必要な場合、インストール、更新、アンインストール、または元に戻す操作は実行されません。

--require-new-be

新しい BE を作成します。このオプションを指定しないと、イメージポリシーに基づいて BE が作成されます。BE が自動的に作成される状況の説明については、「ブート環境ポリシーイメージのプロパティー」を参照してください。このオプションを --require-backup-be と組み合わせることはできません。

--be-name name

BE が作成される場合に、デフォルトの名前ではなく、name という名前を付けます。--be-name の使用は、暗黙的に --require-new-be を示します。

新しいパッケージのインストール

デフォルトで、パッケージを提供した発行元の検索順序で先頭の発行元から、イメージの残りの部分と互換性のあるパッケージの最新バージョンがインストールされます。

パッケージがすでにインストールされている場合は、現在インストールされているバージョンを提供した発行元から、残りのイメージと互換性のある最新バージョンのパッケージをインストールすることによってパッケージが更新されます。

イメージで複数の発行元が有効になっている場合は、発行元のスティッキネスと検索順序を設定したり、またはパッケージ FMRI で発行元を指定したりすることによって、パッケージを提供する発行元を制御できます。また、インストールするバージョンをパッケージ FMRI で指定することもできます。パッケージ FMRI の説明については、「障害管理リソース識別子」を参照してください。発行元のスティッキネスと検索順序の設定については、「発行元の構成」を参照してください。

/usr/bin/pkg install [-nvq] [-g path_or_uri ...]
    [--accept] [--licenses] [--no-index] [--no-refresh] [--no-be-activate]
    [--no-backup-be | --require-backup-be] [--backup-be-name name]
    [--deny-new-be | --require-new-be] [--be-name name]
    [--reject pkg_fmri_pattern ...] pkg_fmri_pattern ...

特定の発行元からのパッケージをインストールするには、pkg_fmri_pattern に発行元名を指定します。次の例では、isv.com が発行元の名前です。

# pkg install pkg://isv.com/developer/isvtool

パッケージの特定のバージョンをインストールするには、pkg_fmri_pattern にバージョン情報を指定します。

# pkg list -avH vim
pkg://solaris/editor/vim@7.3.254,5.11-0.174.0.0.0.0.504:20110921T002716Z    ---
# pkg install vim@7.3.254,5.11-0.174

パッケージの最新バージョンを明示的に要求するには、pkg_fmri_pattern のバージョン部分に latest を使用します。

# pkg install vim@latest

指定したパッケージリポジトリまたはパッケージアーカイブを、パッケージデータの取得元になるイメージ内のソースのリストに一時的に追加するには、-g オプションを使用します。install または update の実行後に、発行元によって提供され、イメージ内に見つからないパッケージがある場合は、起点なしでイメージ構成に追加されます。

更新またはインストールされるパッケージのライセンス条項に同意することを示す場合は、--accept オプションを使用します。このオプションを指定しないと、パッケージのライセンスに同意が必要になった場合、インストール操作は失敗します。この操作の一環としてインストールまたは更新されるパッケージのすべてのライセンスを表示するには、--licenses オプションを使用します。

--no-index オプションを指定すると、操作の正常終了後に、検索インデックスが更新されません。このオプションを指定すると、多数のパッケージをインストールする場合に、いくらか時間を節約できます。すべての installupdate、および uninstall 操作を完了したら、pkg refresh を使用して、使用可能なパッケージのリストと、指定された各発行元の発行元メタデータを更新できます。発行元を指定しない場合、すべての発行元を対象に更新が実行されます。

-no-refresh オプションを指定した場合、使用可能なパッケージやその他のメタデータの最新のリストを取得するために、イメージの発行元のリポジトリに接続しません。

新しいブート環境へのパッケージのインストール


ヒント - 新しい BE を明示的に指定することは、インストールまたは更新のもっとも安全な方法です。BE が作成される状況については、「ブート環境ポリシーイメージのプロパティー」を参照してください。


新しい BE は指定したインストール、アンインストール、または更新の変更が適用された現在の BE のクローンになります。現在の BE は変更されません。システムは自動的に再起動されません。システムの次回の再ブート時に、新しい BE がデフォルトのブート選択肢になります。現在の BE も引き続きブートに使用できます。

--no-be-activate オプションを指定した場合、次回のリブート時に、新しい BE がデフォルトのブート選択肢になりません。

新しい BE を強制的に作成するか、新しい BE にわかりやすい名前を付ける場合は、--be-name オプションを使用します。

# pkg install --be-name s11amp group/feature/amp
           Packages to install:   8
       Create boot environment: Yes
Create backup boot environment:  No

DOWNLOAD                                  PKGS       FILES    XFER (MB)
Completed                                  8/8     640/640    70.9/70.9

PHASE                                        ACTIONS
Install Phase                                942/942

PHASE                                          ITEMS
Package State Update Phase                       8/8
Image State Update Phase                         2/2

PHASE                                          ITEMS
Reading Existing Index                           8/8
Indexing Packages                                8/8

A clone of solaris-174 exists and has been updated and activated.
On the next boot the Boot Environment s11amp will be
mounted on '/'.  Reboot when ready to switch to this updated BE.

# pkg list group/feature/amp
pkg list: no packages matching 'group/feature/amp' installed

pkg list コマンドは、現在の BE に group/feature/amp パッケージがインストールされていないため、group/feature/amp パッケージがインストールされていないことを報告します。group/feature/amp パッケージは新しい s11amp BE にインストールされます。

beadm list コマンドを使用して、システムに s11amp という新しいアクティブな BE があることを確認します。「N」BE は現在ブートしており、「R」BE はリブート時のデフォルトです。リブート時のデフォルトの BE を変更するには、beadm activate コマンドを使用します。

# beadm list
BE           Active Mountpoint Space   Policy Created
--           ------ ---------- -----   ------ -------
s11amp       R      -          20.75G  static 2011-09-23 13:58
solaris      -      -          44.81M  static 2010-11-07 17:45
solaris-151a -      -          158.12M static 2010-11-12 14:37
solaris-174  N      /          30.04M  static 2011-09-02 12:38

新しい BE に group/feature/amp パッケージがインストールされていることを確認します。I 列の「i」は group/feature/amp パッケージがインストールされていることを示します。

# beadm mount s11amp /mnt
# pkg -R /mnt list group/feature/amp
NAME (PUBLISHER)       VERSION                      IFO
group/feature/amp      0.5.11-0.174.0.0.0.0.2559    i--

s11amp BE を必ずアンマウントしてください。

# beadm list
BE           Active Mountpoint Space   Policy Created
--           ------ ---------- -----   ------ -------
s11amp       R      /mnt       20.75G  static 2011-09-23 13:58
solaris      -      -          44.81M  static 2010-11-07 17:45
solaris-151a -      -          158.12M static 2010-11-12 14:37
solaris-174  N      /          30.05M  static 2011-09-02 12:38
# beadm unmount s11amp
# beadm list
BE           Active Mountpoint Space   Policy Created
--           ------ ---------- -----   ------ -------
s11amp       R      -          20.75G  static 2011-09-23 13:58
solaris      -      -          44.81M  static 2010-11-07 17:45
solaris-151a -      -          158.12M static 2010-11-12 14:37
solaris-174  N      /          30.06M  static 2011-09-02 12:38

パッケージの拒否

指定した pkg_fmri_pattern に一致する名前を持つパッケージをインストールしないようにする場合は、pkg install コマンドの --reject オプションを使用します。一致するパッケージがすでにインストールされている場合、それらはこの操作の一環として削除されます。グループ依存関係のターゲットである拒否対象パッケージは回避リストに登録されます。回避リストについては、「回避するパッケージのマーキング」を参照してください。

# pkg install -nv --reject cvs developer-gnu

パッケージの更新

install または update サブコマンドを使用して、インストールされているパッケージを、現在インストールされているバージョンを提供した発行元から、残りのイメージと互換性のあるパッケージの最新バージョンに更新できます。まだインストールされていないパッケージが意図せずにインストールされることを避けるには、pkg update コマンドを使用して、パッケージを更新します。

イメージで複数の発行元が有効になっている場合は、発行元のスティッキネスと検索順序を設定したり、またはパッケージ FMRI で発行元を指定したりすることによって、パッケージを提供する発行元を制御できます。また、インストールするバージョンをパッケージ FMRI で指定することもできます。パッケージ FMRI の説明については、「障害管理リソース識別子」を参照してください。発行元のスティッキネスと検索順序の設定については、「発行元の構成」を参照してください。

/usr/bin/pkg update [-fnvq] [-g path_or_uri ...]
    [--accept] [--licenses] [--no-index] [--no-refresh] [--no-be-activate]
    [--no-backup-be | --require-backup-be] [--backup-be-name name]
    [--deny-new-be | --require-new-be] [--be-name name]
    [--reject pkg_fmri_pattern ...] [pkg_fmri_pattern ...]

パッケージの最新バージョンを明示的に要求するには、pkg_fmri_pattern のバージョン部分に latest を使用します。

# pkg update vim@latest

現在インストールされているバージョンより古いパッケージバージョンを指定して、インプレースダウングレードを実行できます。保持される構成ファイルのうち、ダウングレードされるパッケージの一部であり、元のバージョンがインストールされたあとに変更されたファイルは、拡張子 .update を使用して名前が変更されます。どのファイルを保持するかをパッケージシステムが決定する方法と、パッケージのアップグレード中にこれらのファイルが保持されるしくみについては、pkg(5) のマニュアルページのファイルアクションに関する項目を参照してください。

指定したパッケージリポジトリまたはパッケージアーカイブを、パッケージデータの取得元になるイメージ内のソースのリストに一時的に追加するには、-g オプションを使用します。install または update の実行後に、発行元によって提供され、イメージ内に見つからないパッケージがある場合は、起点なしでイメージ構成に追加されます。

更新されるパッケージのライセンス条項に同意することを示す場合は、--accept オプションを使用します。このオプションを指定しないと、パッケージのライセンスに同意が必要になった場合、更新操作は失敗します。この操作の一環として更新されるパッケージのすべてのライセンスを表示するには、--licenses オプションを使用します。

--no-index オプションを指定すると、操作の正常終了後に、検索インデックスが更新されません。このオプションを指定すると、多数のパッケージをインストールする場合に、いくらか時間を節約できます。すべての installupdate、および uninstall 操作を完了したら、pkg refresh を使用して、使用可能なパッケージのリストと、指定された各発行元の発行元メタデータを更新できます。発行元を指定しない場合、すべての発行元を対象に更新が実行されます。

pkg update コマンドを pkg-fmri を指定しないで使用するか、指定した pkg-fmri がアスタリスク文字 (*) である場合、使用可能な更新があるインストールされたすべてのパッケージが更新されます。使用可能な更新があるパッケージのリストを表示するには、pkg list -u コマンドを使用します。インストールされているすべてのパッケージを更新する場合に、-f オプションを指定すると、クライアントの最新状態チェックが実行されません。