'\" te .\" Copyright (c) 2007, 2015, Oracle and/or its affiliates.All rights reserved. .TH pkgsend 1 "2013 年 7 月 30 日" "SunOS 5.11" "ユーザーコマンド" .SH 名前 pkgsend \- Image Packaging System の公開クライアント .SH 形式 .LP .nf /usr/bin/pkgsend [\fIoptions\fR] \fIcommand\fR [\fIcmd_options\fR] [\fIoperands\fR] .fi .LP .nf /usr/bin/pkgsend generate [-T \fIpattern\fR] [--target \fIfile\fR] \fIsource\fR \&.\&.\&. .fi .LP .nf /usr/bin/pkgsend publish [-b \fIbundle\fR]\&.\&.\&. [-d \fIsource\fR]\&.\&.\&. [-s \fIrepo_uri_or_path\fR] [--key \fIssl_key\fR --cert \fIssl_cert\fR]\&.\&.\&. [-T \fIpattern\fR] [--no-catalog] [\fImanifest\fR \&.\&.\&.] .fi .SH 機能説明 .sp .LP \fBpkgsend\fR では、パッケージのマニフェストを使用して、新しいパッケージと新しいパッケージのバージョンをイメージパッケージングリポジトリに公開できます。リポジトリを作成または管理するには、\fBpkgrepo\fR(1) を参照してください。既存のリポジトリ内でパッケージからパッケージアーカイブを作成するには、\fBpkgrecv\fR(1) を参照してください。パッケージのマニフェストの詳細は、\fBpkg\fR(5) を参照してください。 .sp .LP \fBpkgsend publish\fR 操作のあとで、\fIrepo_uri_or_path\fR リポジトリが \fBpkg search\fR 操作をサポートする必要がある場合は、リポジトリ上で \fBpkgrepo refresh\fR を実行して、検索インデックスを更新してください。 .SH オプション .sp .LP サポートしているオプションは、次のとおりです。 .sp .ne 2 .mk .na \fB\fB-?\fR\fR .ad .br .na \fB\fB--help\fR\fR .ad .br .sp .6 .RS 4n 使用方法に関するメッセージを表示します。 .RE .SH サブコマンド .sp .LP サポートされているサブコマンドは次のとおりです。 .sp .ne 2 .mk .na \fB\fBpkgsend generate\fR [\fB-T\fR \fIpattern\fR] [\fB--target\fR \fIfile\fR] \fIsource\fR \&.\&.\&.\fR .ad .br .sp .6 .RS 4n 各 \fIsource\fR (SVR4 パッケージ、ディレクトリ、\fBtar\fR ファイルなど) を読み取り、その \fIsource\fR を\fB標準出力\fRに表示するマニフェストを生成します。 .sp これで、出力されたマニフェストに注釈を加え、\fBpkgdepend\fR を使用して依存関係を追加または分析し、\fBpkglint\fR を使用してその正当性を検証してから \fBpublish\fR サブコマンドに渡すことができるようになります。 .sp .sp .LP サポートされているソースを次に示します。 .RS +4 .TP .ie t \(bu .el o ファイルシステム形式の SVR4 パッケージ .RE .RS +4 .TP .ie t \(bu .el o データストリーム形式の SVR4 パッケージ .RE .RS +4 .TP .ie t \(bu .el o \fBtar\fR ファイル .RE .RS +4 .TP .ie t \(bu .el o ディレクトリ .RE ソース内のファイルのベース名が \fB-T\fR で指定されたパターンに一致している場合、ファイルのタイムスタンプがそのファイルのアクションに追加されます。\fIpattern\fR は、次のシェルマッチング規則を使用します。 .sp .sp .ne 2 .mk .na \fB*\fR .ad .RS 10n .rt すべてと一致します。 .RE .sp .ne 2 .mk .na \fB?\fR .ad .RS 10n .rt 任意の単一文字と一致します。 .RE .sp .ne 2 .mk .na \fB[\fIseq\fR]\fR .ad .RS 10n .rt \fIseq\fR 内にある任意の文字と一致します。 .RE .sp .ne 2 .mk .na \fB![\fIseq\fR]\fR .ad .RS 10n .rt \fIseq\fR 内にない文字と一致します。 .RE 指定されたソースがディレクトリ内にある場合、単一の i ノードに対して複数のパス名があると、\fBファイル\fRのアクションを \fBハードリンク\fRのアクションと明確に区別できません。通常、ファイルシステム調査で最初に見つかったものがファイルとして扱われ、残りのものがハードリンクとして扱われます。この処理は、ファイルシステムの実装に応じて自由に設定できます。ファイルとして扱うパス名を指定するには、各パス名を引数として \fB--target\fR オプションに渡します。このオプションはほかの種類のソースには影響しません。これは、ソースにはパス名がファイルであるかハードリンクであるかを示す機能があるためです。 .sp SVR4 パッケージがソースとして提供されている場合、\fBpkgsend\fR は、クラスアクションスクリプトを持つファイルが存在せず、プリインストールスクリプト、ポストインストールスクリプト、削除前スクリプト、または削除後スクリプトが存在することを確認します。\fBmanifest\fR クラスを使用してインストールされた SMF マニフェストがある場合、例外が作成されます。\fBBASEDIR\fR は、すべての再配置可能パスから削除されます。 .sp SVR4 \fBDESC\fR パラメータは、\fBpkg\&.description\fR 値に変換されます。SVR4 \fBNAME\fR パラメータは、\fBpkg\&.summary\fR 値に変換されます。 .sp ディレクトリに基づいたマニフェストを生成するとき、デフォルトでは、各ファイルおよびディレクトリの所有者とグループはそれぞれ root と bin になります。 .RE .sp .ne 2 .mk .na \fB\fBpkgsend publish\fR [\fB-b\fR \fIbundle\fR]\&.\&.\&. [\fB-d\fR \fIsource\fR]\&.\&.\&. [\fB-s\fR \fIrepo_uri_or_path\fR] [\fB--key\fR \fIssl_key\fR \fB--cert\fR \fIssl_cert\fR]\&.\&.\&. [\fB-T\fR \fIpattern\fR] [\fB--no-catalog\fR] [\fImanifest\fR \&.\&.\&.]\fR .ad .br .sp .6 .RS 4n 指定されたパッケージマニフェストを使用するパッケージをターゲットパッケージリポジトリに公開します。これにより、指定されたソースからそのパッケージ用のファイルが取得されます。複数のマニフェストが指定されている場合、それらのマニフェストは指定された順序で追加されます。マニフェストが指定されていない場合は、\fBstdin\fR からマニフェストが読み取られます。 .sp 指定しない場合、\fBpkgsend publish\fR はビルドバージョンをパッケージ FMRI に追加します。\fBpublish\fR ツールは、タイムスタンプも (UTC の現在時間) をパッケージ FMRI に追加します。パッケージ FMRI のバージョン文字列については、\fBpkg \fR(5) のマニュアルページを参照してください。 .sp 複数の \fBpkgsend publish\fR プロセスが同じ \fB-s\fR リポジトリに同時に公開する場合は、\fB--no-catalog\fR オプションを指定することをお勧めします。下記の \fB--no-catalog\fR オプションの説明を参照してください。 .sp .sp .ne 2 .mk .na \fB\fB-b\fR \fIbundle\fR\fR .ad .br .sp .6 .RS 4n マニフェスト内でファイルを検索するときに、指定されたバンドルを検索するソースの一覧に追加します。バンドルは、tar ファイルや SVR4 パッケージなどのソースです。このオプションが複数回指定されている場合、ソースはコマンド行に表示される順序で検索されます。\fB-b\fR と \fB-d\fR の両方が指定されている場合、\fB-d\fR のソースが最初に検索されます。サポートされているバンドルとその使用方法の詳細は、前述の \fBgenerate\fR サブコマンドを参照してください。 .RE .sp .ne 2 .mk .na \fB\fB-d\fR \fIsource\fR\fR .ad .br .sp .6 .RS 4n マニフェスト内でファイルを検索するときに、指定されたディレクトリを検索するソースの一覧に追加します。このオプションが複数回指定されている場合、ソースはコマンド行に表示される順序で検索されます。サポートされているソースとその使用方法の詳細は、上記の \fBgenerate\fR サブコマンドを参照してください。 .RE .sp .ne 2 .mk .na \fB\fB-s\fR \fIrepo_uri_or_path\fR\fR .ad .br .sp .6 .RS 4n 特定の URI またはファイルシステムパスに存在しているリポジトリにパッケージが公開されます。公開についての制限事項と推奨事項の詳細は、次の「注意事項」のセクションを参照してください。また、「環境変数」のセクションも参照してください。 .RE .sp .ne 2 .mk .na \fB\fB--key\fR \fIssl_key\fR \fB--cert\fR \fIssl_cert\fR\fR .ad .br .sp .6 .RS 4n \fB--key\fR オプションは、HTTPS リポジトリからのパッケージ取得に使用するクライアント SSL キーファイルを指定するために使用します。\fB--cert\fR オプションは、HTTPS リポジトリからのパッケージ取得に使用するクライアント SSL 証明書ファイルを指定するために使用します。このオプションのペアは複数回指定できます。 .RE .sp .ne 2 .mk .na \fB\fB--no-catalog\fR\fR .ad .br .sp .6 .RS 4n パッケージを発行元のカタログに追加しません。パブリッシャーのカタログの更新は連続で実行されるため、複数のパッケージを一度に公開する場合には常にこのオプションを使用することを推奨します。複数のプロセスが同時にパッケージを公開するときは、このオプションを使用しないと、公開のパフォーマンスが大幅に低下する可能性があります。公開の完了後、\fBpkgrepo refresh\fR コマンドを使用してそれぞれのパブリッシャーカタログに新しいパッケージを追加できます。 .RE \fB-T\fR オプションの説明については、前述の \fBgenerate\fR サブコマンドを参照してください。 .RE .SH 環境変数 .sp .ne 2 .mk .na \fB\fBPKG_REPO\fR\fR .ad .RS 12n .rt 公開先リポジトリのパスまたは URI です。 .RE .SH 使用例 .LP \fB例 1\fR パッケージの生成と公開 .sp .LP \fBpkgsend generate\fR を使用してパッケージを作成し、そのパッケージを公開します。 .sp .in +2 .nf $ \fBpkgsend generate /path/to/proto > /path/to/manifests/foo\&.p5m\fR .fi .in -2 .sp .sp .LP \fBexample\&.com\fR パブリッシャーのパッケージ FMRI を、\fBfoo\&.p5m\fR の先頭に追加します。 .sp .in +2 .nf set name=pkg\&.fmri value=pkg://example\&.com/foo@1\&.0 .fi .in -2 .sp .sp .LP 結果として生成されるマニフェストは、次のようになります。 .sp .in +2 .nf set name=pkg\&.fmri value=pkg://example\&.com/foo@1\&.0 dir group=sys mode=0755 owner=root path=usr dir group=bin mode=0755 owner=root path=usr/bin file usr/bin/foo group=bin mode=0555 owner=root path=usr/bin/foo .fi .in -2 .sp .sp .in +2 .nf $ \fBpkgsend publish -s http://example\&.com:10000 -d /path/to/proto \e\fR \fB/path/to/manifests/foo\&.p5m\fR .fi .in -2 .sp .LP \fB例 2\fR 簡易パッケージの作成と公開 .sp .LP 次の行を含むパブリッシャー \fBexample\&.com\fR に対してマニフェストを作成します。 .sp .in +2 .nf set name=pkg\&.fmri value=pkg://example\&.com/foo@1\&.0-1 file /exdir/foo mode=0555 owner=root group=bin path=/usr/bin/foo .fi .in -2 .sp .sp .LP パッケージを公開します。 .sp .in +2 .nf $ \fBpkgsend publish -s http://example\&.com:10000 -d /exdir\fR .fi .in -2 .sp .LP \fB例 3\fR 既存のマニフェストの使用 .sp .LP ファイルシステムベースの公開と既存のマニフェストを使用してパッケージを公開します。 .sp .in +2 .nf $ \fBpkgsend publish -s /tmp/example_repo -d /tmp/pkg_files \e\fR \fB/tmp/pkg_manifest\fR .fi .in -2 .sp .SH 終了ステータス .sp .LP 次の終了ステータスが返されます。 .sp .ne 2 .mk .na \fB\fB0\fR\fR .ad .RS 6n .rt コマンドが成功しました。 .RE .sp .ne 2 .mk .na \fB\fB1\fR\fR .ad .RS 6n .rt エラーが発生した。 .RE .sp .ne 2 .mk .na \fB\fB2\fR\fR .ad .RS 6n .rt 無効なコマンド行オプションが指定された。 .RE .sp .ne 2 .mk .na \fB\fB99\fR\fR .ad .RS 6n .rt 予期しない例外が発生しました。 .RE .SH 属性 .sp .LP 次の属性については、\fBattributes\fR(5) を参照してください。 .sp .TS tab( ) box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . 属性タイプ 属性値 _ 使用条件 \fBpackage/pkg\fR _ インタフェースの安定性 不確実 .TE .SH 関連項目 .sp .LP \fBpkgdepend\fR(1), \fBpkgrepo\fR(1), \fBpkg\&.depotd\fR(1M), \fBpkg\fR(5) .sp .LP \fIPackaging and Delivering Software With the Image Packaging System in Oracle Solaris 11\&.3\fR .sp .LP \fBhttps://java\&.net/projects/ips/pages/Home\fR .SH 注意事項 .sp .LP 公開プロトコルの制限事項により、サイズが 128MB を超えるパッケージファイルを個別に公開する場合には、ファイルシステムベースの公開を使用する必要があります。ファイルシステムベースの公開は、リポジトリのアクセス制御が必要な場合にも推奨されます。 .sp .LP ファイルシステムベースの公開を使用する場合、公開が完了して Web インタフェースまたは検索応答で変更が反映されたあとに、公開先リポジトリを提供している \fBpkg\&.depotd\fR プロセスを再開する必要があります。詳細は、\fBpkg\&.depotd\fR(1M) を参照してください。