JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Image Packaging System のマニュアルページ     Oracle Solaris 11 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

ユーザーコマンド

packagemanager(1)

pkg(1)

pkgdepend(1)

pkgdiff(1)

pkgfmt(1)

pkglint(1)

pkgmerge(1)

pkgmogrify(1)

pkgrecv(1)

pkgrepo(1)

pkgsend(1)

pkgsign(1)

pm-updatemanager(1)

システム管理コマンド

標準、環境、マクロ

pkgrecv

- Image Packaging System 内容取得ユーティリティー

形式

/usr/bin/pkgrecv [-s src_uri] [-a] [-d (path|dest_uri)]
    [-c cache_dir] [-kr] [-m match] [-n] [--raw]
    [--key keyfile --cert certfile] (fmri|pattern) ...
/usr/bin/pkgrecv [-s src_uri] --newest

機能説明

pkgrecv を使用すると、ユーザーは pkg(5) リポジトリまたはパッケージアーカイブからパッケージを取得できます。また、pkgrecv はオプションで、取得されたパッケージを別のパッケージリポジトリに再公開したり、アーカイブしたりすることもできます。デフォルトでは、パッケージは pkg(1)、pkg.depotd(1M)、およびパッケージ公開ツールでの使用に適したパッケージリポジトリ形式で取得されます。

pkgrecv 操作後に、リポジトリに対して pkgrepo refresh または pkgrepo rebuild を実行し、検索インデックスを構築します。

オプション

サポートしているオプションは、次のとおりです。

-a

取得されたパッケージデータを、-d で指定された場所にある pkg(5) アーカイブ内に格納します。このファイルがすでに存在していてはいけません。このオプションは、ファイルシステムベースの出力先の場合にのみ使用できます。必須ではありませんが、.p5p のファイル拡張子 (たとえば、archive.p5p) を使用することを強くお勧めします。このオプションを --raw と組み合わせることはできません。

-c cache_dir

ダウンロードされた内容をキャッシュするために使用されるディレクトリのパス。このディレクトリが指定されていない場合は、クライアントによってキャッシュディレクトリが自動的に選択されます。ダウンロードが中断されたときに、キャッシュディレクトリが自動的に選択されていた場合は、このオプションを使用してダウンロードを再開します。一時的なデータストレージに使用される場所を設定する方法についての詳細は、下の「環境変数」のセクションを参照してください。

-d path_or_uri

パッケージを再公開する先のターゲットのファイルシステムのパスまたは URI。-a が指定されている場合、ターゲットはまだ存在しない新しいパッケージアーカイブです。指定されていない場合、ターゲットはすでに存在するパッケージリポジトリである必要があります。新しいリポジトリは、pkgrepo(1) を使用して作成できます。

-h

使用方法に関するメッセージを表示します。

-k

取得されたパッケージの内容を圧縮されたままにします。このオプションは、再公開時には無視されます。圧縮されたパッケージの内容を pkgsend(1) で使用しないようにしてください。

-m match

次の値を使用して、マッチング動作を制御します。

all-timestamps

最新のタイムスタンプだけでなく、一致するすべてのタイムスタンプを含めます (all-versions が暗黙的に指定されます)。

all-versions

最新のバージョンだけでなく、一致するすべてのバージョンを含めます。

-n

変更を行うことなく、試験実行を行います。

-r

提供されたパッケージリストのすべての依存関係を再帰的に取得します。

-s src_repo_uri

パッケージデータ受信先の pkg(5) リポジトリまたはパッケージアーカイブの場所を表す URI。

--cert file

HTTPS リポジトリからのパッケージ取得に使用するクライアント SSL 証明書ファイルを指定します。

--key file

HTTPS リポジトリからのパッケージ取得に使用するクライアント SSL キーファイルを指定します。

--newest

指定されたリポジトリから使用可能な最新バージョンのパッケージを一覧表示し、終了します (-s を除くその他のオプションはすべて無視されます)。

--raw

raw パッケージデータを取得し、-d で指定された場所に、幹およびバージョンごとの一連のディレクトリ構造内に格納します。このオプションは、ファイルシステムベースの出力先の場合にのみ使用できます。このパッケージデータを使用すると、一般にはファイルの内容を修正するか、または追加のパッケージメタデータを提供することによって、パッケージを便利に変更して再公開することができます。このオプションを -a と組み合わせることはできません。

使用例

例 1 最新のパッケージを一覧表示する

test という名前のシステム上のリポジトリから使用可能な最新のパッケージを一覧表示します。

$ pkgrecv -s http://test --newest
pkg://solaris/system/library/c++-runtime@0.5.11,5.11-0.174.0.0.0.0.0:20110921T190358Z
pkg://solaris/system/library/freetype-2@2.4.8,5.11-0.175.1.0.0.7.1234:20120109T215840Z
pkg://solaris/system/library/math@0.5.11,5.11-0.174.0.0.0.0.0:20110921T190432Z

例 2 raw パッケージデータを取得する

例 1 から c++-runtime パッケージを pkgsend publish で使用するために適した形式で受け取ります。

$ pkgrecv -s http://test \
-d /local/repo --raw \
c++-runtime@0.5.11,5.11-0.174.0.0.0.0.0:20110921T190358Z
Processing packages for publisher solaris ...
Retrieving and evaluating 1 package(s)...
PROCESS                                         ITEMS     GET (MB)    SEND (MB)
Completed                                         1/1      3.5/3.5      0.0/0.0
$ ls /local/repo
pkg5.repository  publisher  system%2Flibrary%2Fc%2B%2B-runtime

例 3 システムから依存関係を取得する

test という名前のシステムから、パッケージ editor/vim とそのすべての依存関係を受け取ります。

$ pkgrecv -s http://test -d /local/repo -r editor/vim

例 4 すべてのバージョンを取得する

test という名前のシステムから、パッケージ editor/vim のすべてのバージョンを受け取ります。

$ pkgrecv -s http://test -d /local/repo -m all-versions editor/vim
Processing packages for publisher solaris ...
Retrieving and evaluating 2 package(s)...
PROCESS                                        ITEMS     GET (MB)    SEND(MB)
Completed                                        2/2    16.7/16.7    44.9/44.9

例 5 すべてのバージョンを取得し、リモートから再公開する

test という名前のシステムから、パッケージ library/zlib のすべてのバージョンを受け取り、それを remote という名前のシステム上のリモートリポジトリに再公開します。

$ pkgrecv -s http://test -d http://remote:10000 -m all-versions library/zlib

例 6 リポジトリから依存関係を取得する

/export/repo にあるリポジトリから、パッケージ editor/gnu-emacs とそのすべての依存関係を受け取ります。

$ pkgrecv -s /export/repo -d /local/repo -r editor/gnu-emacs

例 7 追加のパッケージを取得する

http://example.com:10000 にあるリポジトリから、まだ存在しないすべてのパッケージを受信します。

$ pkgrecv -s http://example.com:10000 -d /my/pkg/repo '*'

例 8 パッケージアーカイブを作成する

http://example.com:10000 にあるリポジトリから、パッケージ editor/gnu-emacs とそのすべての依存関係を含むパッケージアーカイブを作成します。

$ pkgrecv -s http://example.com:10000 -d /my/emacs.p5p -a -r editor/gnu-emacs

例 9 パッケージをアーカイブからリポジトリにコピーする

パッケージアーカイブ内のすべてのパッケージを /export/repo にある既存のリポジトリにコピーします。

$ pkgrecv -s /my/archive.p5p -d /export/repo '*'

環境変数

次の環境変数がサポートされています。

PKG_DEST

取得されたパッケージを保存する先のディレクトリのパス、またはパッケージがコピーされるリポジトリまたはパッケージアーカイブのファイルシステムのパスまたは URI。

PKG_SRC

パッケージ取得先の pkg(5) リポジトリまたはパッケージアーカイブの場所を表す URI またはファイルシステムのパス。

TMPDIR

プログラム実行中に一時データが格納されるディレクトリの絶対パス。設定されていない場合、一時データはデフォルトで /var/tmp に格納されます。

終了ステータス

次の終了ステータスが返されます。

0

コマンドが成功しました。

1

エラーが発生した。

2

無効なコマンド行オプションが指定された。

3

複数の操作が要求されましたが、それらの一部のみが成功しました。

99

予期しない例外が発生しました。

属性

次の属性については、attributes(5) を参照してください。

属性タイプ
属性値
使用条件
package/pkg
インタフェースの安定性
不確実

関連項目

pkgrepo(1)pkgsend(1)pkg(5)

http://hub.opensolaris.org/bin/view/Project+pkg/