Oracle® Solaris 11.2 での Image Packaging System を使用したソフトウェアのパッケージ化と配布

印刷ビューの終了

更新: 2014 年 7 月
 
 

インストール可能なパッケージバージョンの制約

一般に、システムにインストールされた一連のパッケージのサポートやアップグレードはまとめて行われるのが望ましいことです (セット内のパッケージがすべて更新されるか、セット内のパッケージがどれも更新されないかのどちらか)。これが incorporate 依存関係を使用する理由です。

Oracle Solaris 11.2 ソフトウェアの追加と更新 のカスタム Incorporation のインストールに、インストール可能な pkg:/entire incorporation のバージョンを制約するためのカスタム incorporation の作成例を示します。このセクションの以降の部分では、結合についての一般的な説明を示します。

次の 3 つの部分的なパッケージマニフェストは、foo および bar パッケージと myincorp 結合パッケージの関係を示しています。

次に、foo パッケージマニフェストからの抜粋を示します。

set name=pkg.fmri value=foo@1.0
dir path=foo owner=root group=bin mode=0755
depend fmri=myincorp type=require

次に、bar パッケージマニフェストからの抜粋を示します。

set name=pkg.fmri value=bar@1.0
dir path=bar owner=root group=bin mode=0755
depend fmri=myincorp type=require

次に、myincorp パッケージマニフェストからの抜粋を示します。

set name=pkg.fmri value=myincorp@1.0
depend fmri=foo@1.0 type=incorporate
depend fmri=bar@1.0 type=incorporate

foo および bar パッケージの両方に、myincorp 結合への require 依存関係が含まれています。myincorp パッケージには、次の方法で foo および bar パッケージを制約する incorporate 依存関係が含まれています。

  • foo および bar パッケージは、最大でもバージョン 1.0 (依存関係に指定されたバージョン番号で定義された精度レベル) にしかアップグレードできません。

  • foo および bar パッケージをインストールする場合、それらはバージョン 1.0 以上である必要があります。

バージョン 1.0 への incorporate 依存関係では、バージョン 1.0.1 や 1.0.2.1 などは許可されますが、バージョン 1.1、2.0、0.9 などは許可されません。incorporate 依存関係を上位バージョンで指定する、更新済みの結合パッケージがインストールされると、foo および bar パッケージはその上位バージョンに更新することを許可されます。

foobar の両方に myincorp パッケージに対する require 依存関係があるため、foo または bar のいずれかがインストールされる場合、または foobar の両方がインストールされる場合には、結合パッケージがインストールされます。