checkinstall スクリプトは、オプションの request スクリプトの直後に実行されます。checkinstall スクリプトは、install ユーザーが存在する場合はそのユーザーとして、存在しない場合は nobody ユーザーとして実行します。checkinstall スクリプトには、ファイルシステムのデータを変更する権限はありません。ただし、スクリプトが収集する情報に基づいて、環境変数を作成または変更し、以降のインストールを制御できます。また、このスクリプトは、インストールプロセスをクリーンに停止することもできます。
checkinstall スクリプトは、pkgadd コマンドにとって普通ではない、ファイルシステム上の基本的なチェックを行うためのものです。たとえば、このスクリプトを使用して、現在のパッケージのいずれかのファイルが既存のファイルを上書きするかどうかを事前にチェックしたり、一般的なソフトウェアの依存関係を管理したりできます。depend ファイルは、パッケージレベルの依存関係のみを管理します。
request スクリプトとは異なり、checkinstall スクリプトは応答ファイルが提供されるかどうかに関係なく実行されます。スクリプトが存在しても、パッケージが対話型としてブランドを設定されることはありません。checkinstall スクリプトは、request スクリプトが使用できない場合、または管理的な対話が実際的ではない場合に使用できます。
checkinstall スクリプトは、Solaris 2.5 およびその互換リリース以降で使用できます。
checkinstall スクリプトは、どのファイルも変更できません。このスクリプトは、システムの状態を分析し、その対話に基づいて環境変数割り当てのリストを作成するだけです。この制限を強制するため、checkinstall スクリプトは、特権を持たないユーザー install が存在する場合は、このユーザーとして実行されます。このユーザーが存在しない場合は、特権を持たないユーザー nobody として実行されます。checkinstall スクリプトには、スーパーユーザー権限はありません。
pkgadd コマンドは、スクリプトの応答ファイルを示す 1 つの引数を指定して、checkinstall スクリプトを呼び出します。スクリプトの応答ファイルは、管理者の応答を格納するファイルです。
checkinstall スクリプトは、パッケージ削除時には実行されません。ただし、このスクリプトによって割り当てられた環境変数は保存され、パッケージ削除時に使用できます。
パッケージごとに存在できる checkinstall スクリプトは 1 つだけです。スクリプトの名前は、checkinstall でなければなりません。
環境変数の割り当ては、pkgadd コマンドやほかのパッケージスクリプトが使用できるように、応答ファイル (スクリプトには $1 として認識される) に書き込むことで、インストール環境に追加するようにしてください。
CLASSES および BASEDIR パラメータを除くシステム環境変数と標準インストール環境変数は、checkinstall スクリプトでは変更できません。独自に作成されたほかの環境変数はすべて変更できます。
checkinstall スクリプトで操作する可能性のあるすべての環境変数に、pkginfo ファイルでデフォルト値を割り当てるようにしてください。
出力リストは、PARAM=value の形式としてください。次に例を示します。
CLASSES=none class1 |
checkinstall スクリプトの実行中は、管理者と対話することはできません。管理者との対話はすべて、request スクリプトに制限されます。