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)

システム管理コマンド

標準、環境、マクロ

pkgrepo

- Image Packaging System リポジトリ管理ユーティリティー

形式

/usr/bin/pkgrepo create [--version ver] uri_or_path
/usr/bin/pkgrepo add-publisher -s repo_uri_or_path publisher ...
/usr/bin/pkgrepo get [-F format] [-p publisher ...]
    -s repo_uri_or_path [section/property ...]
/usr/bin/pkgrepo info [-F format] [-H] [-p publisher ...]
    -s repo_uri_or_path
/usr/bin/pkgrepo list [-F format] [-H] [-p publisher ...]
    -s repo_uri_or_path [pkg_fmri_pattern ...]
/usr/bin/pkgrepo rebuild [-p publisher ...]
    -s repo_uri_or_path [--no-catalog] [--no-index]
/usr/bin/pkgrepo refresh [-p publisher ...]
    -s repo_uri_or_path [--no-catalog] [--no-index]
/usr/bin/pkgrepo remove [-n] [-p publisher ...]
    -s repo_uri_or_path pkg_fmri_pattern ...
/usr/bin/pkgrepo set [-p publisher] -s repo_uri_or_path
    section/property=[value] ... or
    section/property=([value]) ...
/usr/bin/pkgrepo help
/usr/bin/pkgrepo version

機能説明

pkgrepo を使用すると、pkg(5) パッケージリポジトリの作成および管理を行うことができます。パッケージリポジトリは、pkg(1) や、pkgsend(1) または pkgrecv(1) などの公開クライアントがパッケージデータを格納したり取得したりできるようにするための、定義済みの一連のディレクトリおよびファイルです。さらに、パッケージリポジトリへのネットワークベースのアクセスが必要な場合、pkg.depotd(1m) は、クライアントにパッケージデータを格納したり取得したりするためのリポジトリへのアクセスを提供できます。

オプション

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

--help or -?

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

サブコマンド

サポートされているサブコマンドは次のとおりです。

create [--version ver] uri_or_path

指定された場所に pkg(5) リポジトリを作成します。

このサブコマンドは、ファイルシステムベースのリポジトリでのみ使用できます。

--version が指定されている場合は、指定されたバージョンと互換性がある形式でリポジトリを作成します。デフォルトでは、バージョン 4 のリポジトリが作成されます。サポートされるバージョンは次のとおりです。

3

1 つのパブリッシャー、カタログバージョン 1、および検索バージョン 1 でのパッケージの格納をサポートします。

4

複数のパブリッシャー、カタログバージョン 1、および検索バージョン 1 でのパッケージの格納をサポートします。

add-publisher -s repo_uri_or_path publisher ...

指定されたパブリッシャーをリポジトリに追加します。新しいパブリッシャーにパッケージや内容は含まれていません。

このサブコマンドは、バージョン 4 のファイルシステムベースのリポジトリでのみ使用できます。

get [-F format] [-p publisher ...] -s repo_uri_or_path [section/property ...]

リポジトリまたはそのパブリッシャーのプロパティー情報を表示します。

デフォルトでは、各プロパティーとその値が個別の行に出力されます。空の ASCII 文字列値は、二重引用符 ("") のペアで表されます。ASCII 文字列値内の次の Bourne シェルのメタキャラクタと、改行、スペース、およびタブは、バックスラッシュ文字 (\) でエスケープする必要があります。

; & ( ) | ^ < > \ " ' `

「使用例」のセクションを参照してください。

指定できるプロパティーのリスト、および各プロパティーの目的と値については、下の set サブコマンドを参照してください。

-F が指定されている場合は、代替の出力形式を指定します。format の値は、tsv (Tab Separated Values)、json (単一行としての JavaScript Object Notation)、または json-formatted (読みやすい形式にされた JavaScript Object Notation) にできます。

-H が指定されている場合は、リストのヘッダーを省略します。

-p が指定されている場合は、指定されたパブリッシャーのプロパティー情報を表示します。特殊な値 all により、すべてのパブリッシャーのプロパティーが表示されます。このオプションは複数回指定できます。

-s が指定されている場合は、指定された URI またはファイルシステムのパスにあるリポジトリを操作します。

info [-F format] [-H] [-p publisher ...] - s repo_uri_or_path

リポジトリで認識されているパッケージパブリッシャーのリストを表示します。このリストには、パブリッシャーごとのパッケージの数、パブリッシャーのパッケージデータが最後に更新された日時、およびパブリッシャーのパッケージデータのステータス (現在処理されているかどうかなど) が含まれます。

-F が指定されている場合は、代替の出力形式を指定します。format の値は、tsv (Tab Separated Values)、json (単一行としての JavaScript Object Notation)、または json-formatted (読みやすい形式にされた JavaScript Object Notation) にできます。

-H が指定されている場合は、リストのヘッダーを省略します。

-p が指定されている場合は、指定されたパブリッシャーのデータのみが表示されます。指定されていない場合は、すべてのパブリッシャーのデータが表示されます。このオプションは複数回指定できます。

-s が指定されている場合は、指定された URI またはファイルシステムのパスにあるリポジトリを操作します。

list [-F format] [-H] [-p publisher ...] - s repo_uri_or_path [pkg_fmri_pattern ...]

指定された pkg_fmri_pattern にマッチする repo_uri_or_path リポジトリのパッケージを一覧表示します。パターンが指定されない場合、リポジトリのすべてのパッケージが一覧表示されます。

デフォルトの出力では、最初の列にパッケージのパブリッシャーの名前が含まれます。2 番目の列にはパッケージの名前が含まれます。3 番目の列には、パッケージのステータスを示すフラグが含まれます。ステータス列の o の値は、パッケージが廃止されていることを示します。ステータス列の r の値は、パッケージの名前が変更されたことを示します (廃止の形態の 1 つです)。4 番目の列には、パッケージのリリースおよびブランチのバージョンが含まれます。リリースバージョンとブランチバージョンについては、pkg(5) を参照してください。

-F が指定されている場合は、代替の出力形式を指定します。format の値は、tsv (Tab Separated Values)、json (単一行としての JavaScript Object Notation)、または json-formatted (読みやすい形式にされた JavaScript Object Notation) にできます。

-H が指定されている場合は、リストのヘッダーを省略します。

-p が指定されている場合は、指定されたパブリッシャーのパッケージのみが表示されます。指定されていない場合は、すべてのパブリッシャーのパッケージが表示されます。このオプションは複数回指定できます。

-s が指定されている場合は、指定された URI またはファイルシステムのパスにあるリポジトリを操作します。

rebuild [-p publisher ...] - s repo_uri_or_path [--no-catalog] [--no-index]

リポジトリ内に見つかったすべてのカタログ、検索、およびその他のキャッシュされた情報を破棄し、それをリポジトリの現在の内容に基づいて再作成します。

-p が指定されている場合は、指定されたパブリッシャーについてのみ操作を実行します。指定されていない場合や、特殊な値 all が指定されている場合は、すべてのパブリッシャーについて操作が実行されます。このオプションは複数回指定できます。

-s が指定されている場合は、指定された URI またはファイルシステムのパスにあるリポジトリを操作します。

--no-catalog が指定されている場合は、パッケージデータを再構築しません。

--no-index が指定されている場合は、検索インデックスを再構築しません。

refresh [-p publisher ...] - s repo_uri_or_path [--no-catalog] [--no-index]

リポジトリ内に見つかった新しいパッケージをすべてカタログ化し、すべての検索インデックスを更新します。これは、遅延公開 (pkgsend--no-catalog または --no-index オプション) で使用されることを目的にしています。

-p が指定されている場合は、指定されたパブリッシャーについてのみ操作を実行します。指定されていない場合や、特殊な値 all が指定されている場合は、すべてのパブリッシャーについて操作が実行されます。このオプションは複数回指定できます。

-s が指定されている場合は、指定された URI またはファイルシステムのパスにあるリポジトリを操作します。

--no-catalog が指定されている場合は、新しいパッケージを追加しません。

--no-index が指定されている場合は、検索インデックスを更新しません。

remove [-n] [-p publisher ...] -s repo_uri_or_path pkg_fmri_pattern ...

リポジトリから、指定されたパターンに一致するパッケージを削除します。これらのパッケージが参照している、ほかのどのパッケージでも使用されていないすべてのファイルも削除されます。


注 - 関連するパブリッシャーのすべての検索インデックスデータが削除されます。


このサブコマンドは、ファイルシステムベースのリポジトリでのみ使用できます。


注意

注意 - この操作は元に戻せません。また、ほかのクライアントがそのリポジトリにアクセスしている間に使用すべきではありません。使用すると、それらのクライアントが取得操作中に失敗する可能性があります。


-n を指定すると、パッケージの変更は行わずに試しに操作を実行します。終了する前に、削除されるパッケージのリストが表示されます。

-p が指定されている場合は、指定されたパブリッシャーの一致するパッケージのみを削除します。指定されていない場合は、すべてのパブリッシャーの一致するパッケージがすべて削除されます。このオプションは複数回指定できます。

-s が指定されている場合は、指定された URI またはファイルシステムのパスにあるリポジトリを操作します。

set [-p publisher] - s repo_uri_or_path section/property =[value] ... or section/property =([value]) ...

リポジトリまたはパブリッシャーの指定されたプロパティーの値を設定します。

このサブコマンドは、ファイルシステムベースのリポジトリでのみ使用できます。

-p が指定されている場合は、指定されたパブリッシャーのプロパティーデータのみを設定します。パブリッシャーがまだ存在しない場合は、追加されます。特殊な値 all を使用すると、すべてのパブリッシャーのプロパティーを設定できます。

-s が指定されている場合は、指定された URI またはファイルシステムのパスにあるリポジトリを操作します。

プロパティーと値は、次のいずれかの形式を使用して指定できます。

section/property=

プロパティー値をクリアーします。

section/property= value

プロパティー値を指定された値に置き換えます。

section/property=( value1 value2 valueN)

プロパティー値を値のリストに置き換えます。

リポジトリバージョン 3 および 4 の場合は、リポジトリの次のプロパティーを設定できます。

publisher/prefix

デフォルトのパブリッシャーの名前を表す文字列。最初の文字は a-z、A-Z、または 0-9 である必要があります。文字列の残りの部分には、文字 0-9、-、.、a-z、および A-Z のみを含めることができます。この値は、複数の発行元のパッケージが存在するか、パッケージがリポジトリに公開され、発行元が指定されていない場合に、使用するべき発行元を示します。

リポジトリバージョン 3 および 4 の場合は、リポジトリ内の個々のパブリッシャーの次のプロパティーを設定できます。

publisher/alias

リポジトリの構成データを使用してパブリッシャーを追加するときにクライアントが使用すべきデフォルトの別名を表す文字列。最初の文字は a-z、A-Z、または 0-9 である必要があります。文字列の残りの部分には、文字 0-9、-、.、a-z、および A-Z のみを含めることができます。

repository/collection_type

このリポジトリで提供されるパッケージのタイプを示す値 core または supplemental を持つことができます。

core タイプは、このリポジトリにはリポジトリ内のパッケージによって宣言されたすべての依存関係が含まれていることを示します。core タイプは主に、オペレーティングシステムリポジトリに使用されます。

supplemental タイプは、このリポジトリには、別のリポジトリ内に配置されているパッケージに依存するか、またはそれらのパッケージとともに使用されるためのパッケージが含まれていることを示します。

repository/description

リポジトリの目的と内容を説明した標準テキストの段落。

repository/detailed_url

リポジトリに関する追加情報を提供するドキュメント (Web ページなど) の場所を表す URI。

repository/legal_uris

リポジトリに関する追加の使用条件情報を提供するドキュメントの場所 (URI) のリスト。

repository/mirrors

リポジトリのパッケージ内容のコピーを含むが、パッケージのメタデータは含まないリポジトリの場所 (URI) のリスト。

repository/name

リポジトリの名前を含む標準テキスト文字列。

repository/origins

リポジトリのパッケージのメタデータと内容の完全なコピーを含むリポジトリの場所 (URI) のリスト。

repository/refresh_seconds

クライアントが、更新されたパッケージデータがあるかどうかを調べるためにリポジトリをチェックする際に、各更新チェックのあとに待つべき秒数を表す整数値。

repository/registration_uri

リポジトリへのアクセスのための資格を取得するために使用する必要のあるリソースの場所を表す URI。この 1 つの例に、登録 Web ページがあります。

repository/related_uris

ユーザーが関心を持っている可能性があるパッケージを含むリポジトリの場所 (URI) のリスト。

ここでは文書化されていないが、get サブコマンドの出力に一覧表示されるプロパティーは内部使用のために予約されているため、設定しないようにしてください。

version

pkg(5) システムのバージョンを識別する一意の文字列を表示します。version 操作によって生成される値はソート可能ではないため、等しいかどうかを超えて安全に比較することはできません。

使用例

例 1 パッケージリポジトリを作成する

$ pkgrepo create /my/repository

例 2 情報を表示する

パブリッシャーのサマリーと、リポジトリ内のパッケージの数を表示します。

$ pkgrepo info -s /my/repository
PUBLISHER   PACKAGES STATUS UPDATED
example.com 5        online 2011-07-22T18:09:09.769106Z
$ pkgrepo info -s http://pkg.oracle.com/solaris/release/
PUBLISHER PACKAGES STATUS UPDATED
solaris   3941     online 2010-11-12T19:24:25.967246Z

例 3 カタログと検索データを再構築する

リポジトリのカタログと検索データを再構築します。

$ pkgrepo rebuild -s /my/repository

例 4 カタログと検索データを再表示する

リポジトリのカタログと検索データを再表示します。

$ pkgrepo refresh -s /my/repository
$ pkgrepo refresh -s http://example.com/repository

例 5 すべてのリポジトリプロパティーを表示する

$ pkgrepo get -s /my/repository
SECTION    PROPERTY VALUE
publisher  prefix   ""
repository version  4
$ pkgrepo get -s http://pkg.oracle.com/solaris/release/
SECTION    PROPERTY VALUE
publisher  prefix   solaris
repository version  4

例 6 すべてのパブリッシャープロパティーを表示する

$ pkgrepo get -s http://pkg.oracle.com/solaris/release/ -p all
PUBLISHER SECTION    PROPERTY         VALUE
solaris   publisher  alias
solaris   publisher  prefix           solaris
solaris   repository collection-type  core
solaris   repository description      This\ repository\ serves\ the\ Oracle\
Solaris\ 11\ Package\ repository.
solaris   repository legal-uris       ()
solaris   repository mirrors          (http://pkg-cdn1.oracle.com/solaris.release/)
solaris   repository name             Oracle\ Solaris\ 11\ Package\ Repository
solaris   repository origins          ()
solaris   repository refresh-seconds
solaris   repository registration-uri ""
solaris   repository related-uris     ()

例 7 デフォルトのパブリッシャーを設定する

$ pkgrepo set -s /my/repository publisher/prefix=example.com

例 8 パブリッシャープロパティーを設定する

$ pkgrepo set -s /my/repository -p example.com \
repository/origins=http://example.com/repository

例 9 新しいパブリッシャーをリポジトリに追加する

$ pkgrepo add-publisher -s /my/repository example.com

終了ステータス

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

0

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

1

エラーが発生した。

2

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

3

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

4

変更は行われませんでした。処理がありません。

99

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

属性

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

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

関連項目

pkg(1)pkgrecv(1)pkgsend(1)pkg.depotd(1m)pkg(5)

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