pkgchk コマンドを使用すると、パッケージの整合性、パッケージがシステムにインストールされているか、パッケージ形式でインストールされているか (pkgadd コマンドでインストールできる状態) を確認できます。パッケージの構造またはインストールされているファイルとディレクトリを確認したり、パッケージオブジェクトについての情報を表示したりします。pkgchk コマンドは、次の内容について一覧表示したり、チェックしたりできます。
パッケージインストールスクリプト。
システムに現在インストールされているオブジェクトの内容または属性、またはその両方。
スプールされている未インストールのパッケージの内容。
このコマンドの詳細については、pkgchk(1M) を参照してください。
pkgchk コマンドでは、2 種類のチェックが実行されます。ファイルの属性 (ファイルのアクセス権と所有権、およびブロックまたは文字型特殊デバイスのメジャー/マイナー番号) のチェックとファイルの内容 (サイズ、チェックサム、および変更日時) のチェックです。デフォルトでは、ファイルの属性と内容の両方がチェックされます。
また、pkgchk コマンドでは、インストールされているパッケージとインストールソフトウェアデータベースの間で、ファイルの属性と内容の比較も行われます。パッケージに関するエントリは、インストール時から変わる場合があります。たとえば、別のパッケージによってパッケージコンポーネントが変更されているような場合です。データベースは、その変更を反映します。
パッケージをインストールします。
必要に応じて、「スタンドアロンシステムまたはサーバーにパッケージをインストールする方法」を参照してください。
パッケージの整合性を確認します。
# pkgchk [-v] [-R root-path] [pkg-abbrev...] |
-v |
処理されたファイルを一覧表示します。 |
-R root-path |
クライアントシステムのルートファイルシステムの場所を指定します。 |
pkg-abbrev |
チェックする 1 つ以上のパッケージの名前を空白で区切って指定します。省略すると、pkgchk では使用可能なすべてのパッケージがチェックされます。 |
この例では、インストールされているパッケージの整合性の確認に使用する必要のあるコマンドを示します。
$ pkgchk pkg-abbrev $ |
エラーがある場合、pkgchk コマンドではそのエラーが出力されます。エラーがない場合は、何も出力されず、終了コード 0 が返されます。パッケージの省略名を指定しないと、システム上のすべてのパッケージがチェックされます。
または、-v オプションを使用すると、エラーがない場合にはパッケージに含まれるファイルが一覧表示されます。次に例を示します。
$ pkgchk -v SUNWcadap /opt/SUNWcadap /opt/SUNWcadap/demo /opt/SUNWcadap/demo/file1 /opt/SUNWcadap/lib /opt/SUNWcadap/lib/file2 /opt/SUNWcadap/man /opt/SUNWcadap/man/man1 /opt/SUNWcadap/man/man1/file3.1 /opt/SUNWcadap/man/man1/file4.1 /opt/SUNWcadap/man/windex /opt/SUNWcadap/srcfiles /opt/SUNWcadap/srcfiles/file5 /opt/SUNWcadap/srcfiles/file6 $ |
クライアントシステムのルートファイルシステムにインストールされているパッケージを確認する必要がある場合は、次のコマンドを使用します。
$ pkgchk -v -R root-path pkg-abbrev |
以上の手順が終了したら、次の作業、「pkginfo コマンドで情報を取得する方法」に進みます。