PKG(7) | FreeBSD Miscellaneous Information Manual | PKG(7) |
名称
pkg — パッケージを操作するためのユーティリティ書式
pkg | < command> |
pkg | add [ -f]< pkg.txz> |
pkg | -N |
pkg | bootstrap [ -f] |
解説
pkg は、パッケージ管理ツールです。それは、 ports(7) からインストールされたローカルのパッケージを管理し、リモートのリポジトリからパッケージをインストール/アップグレードするために使用されます。後方互換性がない問題を避けるために、実際の pkg(8) ツールは、基本システムにインストールされません。最初に起動されたとき、 pkg は、リモートのリポジトリから実際の pkg(8) をブートストラップします。
- pkg < command>
- pkg(8) がまだインストールされていないなら、それは、取って来られ、検証され、インストールされた署名があり、次に、それにオリジナルのコマンドを転送します。既にインストールされているなら、要求されたコマンドは、実際の pkg(8) に転送されます。
-
pkg
add
[ -f]< pkg.txz> - リモートから取って来る代わりにローカルのパッケージから pkg(8) をインストールします。 pkg.txz.sig ファイルが存在し、署名のチェックが有効にされるなら、署名は、パッケージをインストールする前に検証されます。 -f フラグが指定されるなら、 pkg(8) は、それが既にインストールされている場合に関係なく、インストールされます。
- pkg -N
- ブートストラップしません、単に pkg(8) が実際にインストールされているかどうか判断します。そうであるなら、0 とインストールされたパッケージの数を返し、そうでなければ、1 を返します。
-
pkg
bootstrap
[ -f] - ブートストラップすることを試み、それがインストールされた後に、 pkg(8) に何も転送しません。 -f フラグが指定されるなら、 pkg(8) は、それが既にインストールされている場合に関係なく、取って来られ、インストールされます。
設定
設定は、それがリポジトリの設定ファイルまたはグローバルな設定ファイルにあるかどうかで異なります。次の形式で /etc/pkg/FreeBSD.conf に、リポジトリの設定を格納することができます:
FreeBSD: { url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest", mirror_type: "srv", signature_type: "none", fingerprints: "/usr/share/keys/pkg", enabled: yes }
- url
- 環境変数 の PACKAGESITE を参照してください。
- mirror_type
- 環境変数 の MIRROR_TYPE を参照してください。
- signature_type
- 環境変数 の SIGNATURE_TYPE を参照してください。
- fingerprints
- 環境変数 の FINGERPRINTS を参照してください。
- enabled
- このリポジトリが使用されるべきかどうか定義します。有効な値は、 yes, true, 1, no, false, 0 です。
次の形式で /usr/local/etc/pkg.conf グローバルな設定を格納することができます:
PACKAGESITE: "pkg+http://pkg.FreeBSD.org/${ABI}/latest", MIRROR_TYPE: "srv", SIGNATURE_TYPE: "none", FINGERPRINTS: "/usr/share/keys/pkg", ASSUME_ALWAYS_YES: "yes" REPOS_DIR: ["/etc/pkg", "/usr/local/etc/pkg/repos"]
それぞれの変数について、 環境変数 を参照してください。
環境変数
使用される pkg.conf ファイルからの設定を上書きするために次の環境変数を設定することができます。- MIRROR_TYPE
- これは、どのミラータイプが使用されるべきかを定義します。有効な値は、 SRV, HTTP, NONE です。
- ABI
- これは、パッケージがインストールされる ABI を定義します。デフォルト ABI は、 /bin/sh から決定されます。
- ASSUME_ALWAYS_YES
- 設定されるなら、 pkg(8) をブートストラップするとき、確認は、求められません。
- SIGNATURE_TYPE
- FINGERPRINTS に設定されるなら、 pkg(8) をブートストラップするとき、署名は、既知の証明書の指紋に対して要求され、有効されます。
- FINGERPRINTS
- SIGNATURE_TYPE が FINGERPRINTS に設定されるなら、この値は、既知の指紋があるところで、ディレクトリパスに設定されるべきです。
- PACKAGESITE
- pkg(8) と他のパッケージが取って来られる URL。
- REPOS_DIR
- リポジトリ設定ファイルのために検索されるべきディレクトリのコンマで区切られたリスト。
関連ファイル
設定は、リストされた順序でファイルから読み込まれます。 REPOS_DIR を設定することによって、このパスを変更することができます。最後の有効にされたリポジトリは、 pkg(8) のブートストラップのために使用されたリポジトリです。- /usr/local/etc/pkg.conf
- /etc/pkg/FreeBSD.conf
- /usr/local/etc/pkg/repos/*.conf
使用例
いくつかの例は、ここにリストされます。利用可能なコマンドの完全なリストは、いったん、それがブートストラップされると、 pkg(8) で利用可能です。パッケージを探索します:
$ pkg search perl
パッケージをインストールします:
% pkg install perl
インストールされたパッケージをリストします:
$ pkg info
リモートのリポジトリからアップグレードします:
% pkg upgrade
自動的でないパッケージをリストします:
$ pkg query -e '%a = 0' %o
リスト自動的なパッケージをリストします:
$ pkg query -e '%a = 1' %o
インストールされたパッケージを削除します:
% pkg delete perl
必要でない依存性を削除します:
% pkg autoremove
削除することから autoremove (自動削除) を防ぐ、自動的なことから自動的でないパッケージに変更します:
% pkg set -A 0 perl
いったん、それに依存するものがないなら、削除されることを許可する autoremove (自動削除) を行なう、自動的でないことから自動的なパッケージに変更します:
% pkg set -A 1 perl
インストールされたパッケージからパッケージファイルを作成します:
% pkg create -o /usr/ports/packages/All perl
どのパッケージがファイルをインストールしたか判断します:
$ pkg which /usr/local/bin/perl
セキュリティ勧告のためにインストールされたパッケージを監査します:
$ pkg audit
不一致のチェックサムのためのインストールされたパッケージをチェックします:
# pkg check -s -a
失われた依存性をチェックします:
# pkg check -d -a
歴史
pkg コマンドは、 FreeBSD 9.1 ではじめて登場しました。それは、ツール pkg_add(1), pkg_info(1) と pkg_create(1) の pkg_install プログラム一式を置き換え、 FreeBSD 10.0 のデフォルトのパッケージツールになります。December 12, 2013 | FreeBSD |