ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
アプリケーションパッケージ開発者ガイド Oracle Solaris 10 1/13 Information Library (日本語) |
このセクションでは、オプションのパッケージ情報ファイルについて説明します。パッケージ情報ファイルを使用すると、パッケージの依存関係の定義、著作権に関するメッセージの提供、およびターゲットシステム上の追加領域の予約が可能になります。
作成するパッケージがほかのパッケージに依存するかどうか、およびほかのパッケージが作成するパッケージに依存するかどうかを、判定する必要があります。パッケージの依存関係と非互換性は、2 つのオプションパッケージ情報ファイル、compver と depend で定義できます。
compver ファイルを提供することで、インストールされているパッケージと互換性のある、以前のバージョンのパッケージを指定できます。
depend ファイルを提供することで、パッケージに関連付けられた 3 種類の依存関係を定義できます。これらの依存タイプは次のとおりです。
depend ファイルは、とても基本的な依存関係のみを判定します。作成するパッケージが特定のファイル、そのファイルの内容、動作に依存する場合、depend ファイルによる判定だけでは正確性は十分ではありません。このような場合は、request スクリプトまたは checkinstall スクリプトを使用して、詳細な依存関係チェックを行うようにしてください。checkinstall スクリプトは、パッケージのインストールプロセスをクリーンに停止できる唯一のスクリプトでもあります。
注 - depend ファイルと compver ファイルのエントリが prototype ファイルにあることを確認してください。ファイルタイプは、i (パッケージ情報ファイル) としてください。
詳細は、depend(4) および compver(4) のマニュアルページを参照してください。
作成するパッケージと互換性があるバージョンを一覧表示します。次の形式を使用します。
string string . . .
string の値は、各互換パッケージの pkginfo ファイルの VERSION パラメータに割り当てられている値と同じです。
依存関係ごとにエントリを追加します。次の形式を使用します。
type pkg-abbrev pkg-name (arch) version (arch) version . . .
依存タイプを定義します。次のいずれかの文字を指定する必要があります。 P (必須パッケージ)、I (非互換パッケージ)、または R (逆依存)。
パッケージの省略名を指定します (SUNWcadap など)。
完全なパッケージ名を指定します。たとえば、「Chip designers need CAD application software to design abc chips. Runs only on xyz hardware and is installed in the usr partition.」などです。
オプション。パッケージが稼働するハードウェアの種類を指定します。たとえば、sparc や x86 などです。アーキテクチャーを指定する場合は、区切り文字として丸括弧を使用する必要があります。
オプション。pkginfo ファイルで VERSION パラメータに割り当てられている値を指定します。
詳細については、depend(4) を参照してください。
追加情報ファイルおよびインストールスクリプトを作成する場合は、次のタスク、「著作権に関するメッセージを書く方法」に進んでください。
prototype ファイルを作成していない場合は、「pkgproto コマンドを使用して prototype ファイルを作成する方法」の手順を完了して、手順 7 に進んでください。
prototype ファイルをすでに作成している場合は、それを編集し、前の手順で作成した各ファイルのエントリを追加します。
必要な場合は、「パッケージの構築方法」を参照してください。
例 3-1 compver ファイル
この例では、4 つのバージョンのパッケージ (1.0、1.1、2.0 と新しいパッケージ 3.0) があります。新しいパッケージには、以前の 3 つのすべてのバージョンとの互換性があります。最新バージョンの compver ファイルは次のような内容です。
release 3.0 release 2.0 version 1.1 1.0
エントリは、順番になっていなくてもかまいません。ただし、各パッケージの pkginfo ファイルでの VERSION パラメータの定義と正確に一致するようにしてください。この例では、パッケージ設計者は最初の 3 つのバージョンで異なる形式を使用しています。
例 3-2 depend ファイル
この例では、サンプルパッケージ SUNWcadap は、SUNWcsr パッケージと SUNWcsu パッケージがターゲットシステムにすでにインストールされている必要があるものとします。 SUNWcadap の depend ファイルは、次のような内容です。
P SUNWcsr Core Solaris, (Root) P SUNWcsu Core Solaris, (Usr)
参照
パッケージを構築したあと、実際にインストールして、正しくインストールされることを確認し、整合性を検証します。第 4 章パッケージの確認と転送では、これらのタスクについて説明し、検証済みのパッケージを配布媒体に転送する方法の手順を示します。
パッケージのインストール中に著作権に関するメッセージを表示するべきかどうかを決める必要があります。表示する必要がある場合は、copyright ファイルを作成します。
注 - ソフトウェアアプリケーションを法的に保護するには、copyright ファイルを含めるようにしてください。メッセージの正確な文言については、会社の法務部門に確認してください。
著作権に関するメッセージを提供するには、copyright という名前のファイルを作成する必要があります。インストール中に、ファイルに記述されているとおりに (書式設定されずに) メッセージが表示されます。詳細については、copyright(4) のマニュアルページを参照してください。
注 - copyright ファイルのエントリが prototype ファイルにあることを確認してください。ファイルタイプは、i (パッケージ情報ファイル) としてください。
パッケージのインストール時に表示する、著作権に関するメッセージの文章を、正確に入力します。
追加情報ファイルおよびインストールスクリプトを作成する場合は、次のタスク、「ターゲットシステムに追加領域を予約する方法」に進んでください。
prototype ファイルを作成していない場合は、「pkgproto コマンドを使用して prototype ファイルを作成する方法」の手順を完了して、手順 5 に進んでください。
prototype ファイルをすでに作成している場合は、それを編集し、前の手順で作成した情報ファイルのエントリを追加します。
必要な場合は、「パッケージの構築方法」を参照してください。
例 3-3 copyright ファイル
たとえば、著作権に関するメッセージの一部分は次のようになります。
Copyright (c) 2003 Company Name All Rights Reserved This product is protected by copyright and distributed under licenses restricting copying, distribution, and decompilation.
参照
パッケージを構築したあと、実際にインストールして、正しくインストールされることを確認し、整合性を検証します。第 4 章パッケージの確認と転送では、これらのタスクについて説明し、検証済みのパッケージを配布媒体に転送する方法の手順を示します。
ターゲットシステムでは、パッケージは追加のディスク領域が必要かどうかを判定する必要があります。この領域は、パッケージオブジェクトで必要な領域とは別に追加するものです。必要な場合は、space 情報ファイルを作成します。このタスクは、「インストール時に作成される追加のオブジェクトの定義」で説明した、インストール時の空のファイルとディレクトリの作成とは異なるものです。
pkgadd コマンドを使用すると、pkgmap ファイルでのオブジェクト定義に基づいて、パッケージのインストールに十分なディスク領域が確保されます。ただし、パッケージでは、pkgmap ファイルで定義されているオブジェクトが必要とするディスク領域以上の追加の領域が必要になる場合があります。たとえば、パッケージのインストール後に、ディスク領域を消費するデータベース、ログファイルなど、ファイルサイズが大きくなる可能性があるファイルが作成されるような場合です。このような場合のために領域を予約するには、必要なディスク領域を指定する space ファイルを含めるようにしてください。pkgadd コマンドは、space ファイルで指定されている追加領域をチェックします。詳細については、space(4) のマニュアルページを参照してください。
注 - space ファイルのエントリが prototype ファイルにあることを確認してください。ファイルタイプは、i (パッケージ情報ファイル) としてください。
パッケージに必要な追加ディスク領域の要件を指定します。次の形式を使用します。
pathname blocks inodes
ディレクトリ名を指定します。ファイルシステムのマウントポイントであってもなくてもかまいません。
予約する 512 バイトブロックの数を指定します。
必要な i ノードの数を指定します。
詳細については、space(4) のマニュアルページを参照してください。
インストールスクリプトを作成する場合は、次のタスク、「request スクリプトを書く方法」に進んでください。
prototype ファイルを作成していない場合は、「pkgproto コマンドを使用して prototype ファイルを作成する方法」の手順を完了して、手順 5 に進んでください。
prototype ファイルをすでに作成している場合は、それを編集し、前の手順で作成した情報ファイルのエントリを追加します。
必要な場合は、「パッケージの構築方法」を参照してください。
例 3-4 space ファイル
この space ファイルの例では、1000 個の 512 バイトブロックと 1 個の i ノードをターゲットシステムの /opt ディレクトリに予約するように指定しています。
/opt 1000 1
参照
パッケージを構築したあと、実際にインストールして、正しくインストールされることを確認し、整合性を検証します。第 4 章パッケージの確認と転送では、これらのタスクについて説明し、検証済みのパッケージを配布媒体に転送する方法の手順を示します。