Provided by: apt_1.0.1ubuntu2_amd64 bug

名前

       apt.conf - APT の設定ファイル

説明

       /etc/apt/apt.conf は、APT スイートの全ツールで使用するメイン設定ファイルです。しかし、間違
       いなくオプションを設定しておくだけの場所などではありません。そのため、APT スイートは統一環
       境を提供するため、共通のコマンドラインパーサを共有しています。

       APT ツールの起動時に、設定ファイルを以下の順番で読み込みます。

        1. APT_CONFIG 環境変数で指定したファイル (存在する場合)

        2. Dir::Etc::Parts にあるすべてのファイルを英数字の昇順になります。ファイル名には拡張子が
           ないか、"conf" となっており、英数字、ハイフン (-)、アンダースコア (_)、ピリオド (.) で
           構成されています。そうでなければ、Dir::Ignore-Files-Silently 設定リストのパターンに一
           致するもの以外に対して、ファイルを無視するという注意を APT が出力します。一致する場合
           は黙って無視します。

        3. Dir::Etc::Main で指定される、メイン設定ファイル

        4. コマンドラインオプションにより、設定ディレクティブの上書きや設定ファイルの追加読み込み
           ができます。

構文

       設定ファイルは、機能グループごとに系統立てられたオプションを木構造で表します。オプションの
       指定は、2 つのコロンで区切ります。例えば APT::Get::Assume-Yes は、APT ツールグループの Get
       ツール用オプションです。オプションは、親グループからは継承しません。

       設定言語の構文は、bind や dhcp のような ISC ツールをモデルにしています。// で始まる行はコ
       メントとして扱われます (無視)。同様に C/C++ のコメントのような /* と */ の間もコメントとし
       て扱います。いずれの行も、APT::Get::Assume-Yes "true"; のような形式です。引用符と行末のセ
       ミコロンは必須です。値は1行でなければならず、文字列結合はありません。値の中にバックスラッ
       シュや余計な引用符があってはいけません。オプション名は、英数字と "/-:._+" が使用できま
       す。以下のように波カッコを使うと、新しいスコープを開くことができます。

           APT {
             Get {
               Assume-Yes "true";
               Fix-Broken "true";
             };
           };

       また適宜改行することで、より読みやすくなります。リストは、開いたスコープ、クォートで囲まれ
       た 1 単語、そしてセミコロンと続けることで作成できます。セミコロンで区切って、複数のエント
       リを表せます。

           DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};

       /usr/share/doc/apt/examples/configure-index.gz は一般的な設定ファイルのサンプルです。どの
       ように設定するか参考になるでしょう。

       設定項目の名前にある文字の大小は、重要ではありません。そのため、前述の例を
       dpkg::pre-install-pkgs とすることもできます。

       前述した DPkg::Pre-Install-Pkgs の例で見られるように、リストを定義した場合、設定項目名はオ
       プションになります。名前を指定しない場合、新しいエントリは、単純に新しいオプションをリスト
       に追加します。名前を指定して同様にすると、あらゆる他の選択肢をオプションに再割り当てし、オ
       プションを上書きできます。

       #include (これは廃止予定でサポートしない他の実装もあります) と #clear の 2 つの特別なコマ
       ンドがあります。#include は指定したファイルを取り込みます。ファイル名がスラッシュで終わっ
       た場合には、そのディレクトリをすべて取り込みます。#clear は、設定ツリーの一部を削除するの
       に使用します。指定した要素と、それ以下の要素を削除します (これらの行も、セミコロンで終わる
       必要があることに注意してください)。

       #clear コマンドは、リストや完全なスコープを削除する唯一の方法です。スコープの再オープン
       (や後述する :: スタイル)は、それまで書いたエントリを上書きしません。オプションでは新しい値
       を与えて上書きするしかありませんが、リストやスコープは上書きできません。クリアされるだけで
       す。

       すべての APT ツールでは、コマンドラインで任意の設定ディレクティブを指定できる -o オプショ
       ンが使用できます。構文は、完全なオプション名 (例: APT::Get::Assume-Yes) に続き等号、その後
       オプションの新しい値となります。リスト名に続き :: を加えることで、リストを追加できます (疑
       問に思われたように、スコープ構文はコマンドラインで使用できません)。

       :: を用いたリストへの項目追加は、1 行で 1 項目の場合にのみ使用でき、スコープ構文と組み合わ
       せるべきではないことに注意してください (スコープ構文には暗黙で :: が追加されます)。両方の
       構文を同時に使用すると、「他のオプションと同様に名前と共に動作する、通常ではありえない名前
       "::" のオプションである」といった、(残念なことに) 複数のユーザに渡るバグの引き金になりま
       す。たくさんの問題の中には、リストに追加しようと誤った構文で複数行書いたユーザが、このオプ
       ション "::" を最後に割り当てようとして、正反対の結果を得るということも含まれます。APT の次
       期バージョンでは、この誤用を検出すると、動作を停止しエラーを上げるようになります。そのた
       め、APT がこの件で明白にエラーを吐かない限りは、自分でそのような構文を修正してください。

APT グループ

       このオプショングループは、ツール全体に影響のある、一般的な APT の振る舞いを制御します。

       Architecture
           システムアーキテクチャ - ファイルを取得したり、パッケージリストを解析するときに使用す
           るアーキテクチャをセットします。内部でのデフォルトは、apt をコンパイルしたアーキテク
           チャです。

       Architectures
           システムがサポートする、すべてのアーキテクチャです。例えば、amd64 (x86-64 とも呼ばれま
           す) 命令セットを実装した CPU は、i386 (x86) 命令セット用にコンパイルされたバイナリも実
           行できます。このリストは、ファイルを取得しパッケージリストを解析する際に利用されま
           す。初期のデフォルト値は、常にシステムのネイティブアーキテクチャ (APT::Architecture)
           です。dpkg --add-architecture を用いて、外部アーキテクチャをデフォルトリストに追加しま
           す。

       Build-Profiles
           List of all build profiles enabled for build-dependency resolution, without the
           "profile." namespace prefix. By default this list is empty. The DEB_BUILD_PROFILES as
           used by dpkg-buildpackage(1) overrides the list notation.

       Default-Release
           ひとつ以上のバージョンがある場合に、パッケージをインストールを行うデフォルトリリースで
           す。リリース名や、コード名、リリースバージョンがあります。例えば 'stable', 'testing',
           'unstable', 'wheezy', 'jessie', '4.0', '5.0*' となります。apt_preferences(5) も参照し
           てください。

       Ignore-Hold
           保留パッケージの無視 - このグローバルオプションは、問題解決器に保留と指定したパッケー
           ジを無視します。

       Clean-Installed
           デフォルトで有効です。on の時、autoclean 機能は、ダウンロードできなくなったパッケージ
           を、すべてキャッシュから削除します。off の場合、ローカルにインストールされているパッ
           ケージは、削除対象から外します。しかし、 APT はキャッシュから削除したパッケージの再イ
           ンストール方法を、直接提供するわけではないことに注意してください。

       Immediate-Configure
           デフォルトは on です。dpkg(1) の呼び出し失敗の影響を最小限にするため、インストール・更
           新操作の中で、APT は不可欠パッケージや重要パッケージを、可能な限り早くインストールする
           ようになります。このオプションを無効にすると、以下のように、重要パッケージを特別パッ
           ケージと同様に扱うようになります。パッケージ A の展開とその設定の間に、パッケージ B や
           C などの関係ない、たくさんの他のパッケージの展開と設定が行えます。dpkg(1) の呼び出しに
           失敗した場合 (例: パッケージ B のメンテナスクリプトでエラー発生)、システムの状態
           は、パッケージ A は展開したが未設定になります。そのため、A に依存したパッケージの動作
           が保証されなくなり、A への依存関係は、もう満たせません。

           即時 (immediate) フラグは事前依存関係と等価なため、即時設定マーカも潜在的に、循環依存
           関係の問題に対して適用されます。理論上 APT は、即時設定不能と認識し、中断し、操作を継
           続するためにこのオプションを一時的に無効にするよう提案できます。ここで言う「理論上」と
           いう言葉に注意してください。現実世界では、安定版ではないバージョンでも、この問題にはほ
           とんど遭遇していませんし、問題のパッケージの依存関係が誤っているか、システムの状態がす
           でに破損している場合に発生していました。そのため、盲目的にこのオプションを無効にするべ
           きではありません。前述のシナリオを解決する方法の、1つにしかすぎないのです。

           このオプションを無効にして dist-upgrade のような大きな操作を実行する前に、パッケージに
           install を明示して、即時設定が行われないようにするべきです。ですが、動作の改善とアップ
           グレードプロセスの修正のため、以下のバグリンクから、問題をディストリビューションと APT
           チームにも報告していただきたいです。

       Force-LoopBreak
           何をしようとしているのか本当に判っているのでなければ、絶対にこのオプションを有効にしな
           いでください。不可欠 (essential) パッケージ同士で、競合 (Conflicts) /競合や競合/事前依
           存 (Pre-Depend) のループに落ち込んだときに、不可欠パッケージを一時的に削除してループを
           抜けられるようにします。そんなループはあり得ないはずで、あるとすれば重大なバグです。こ
           のオプションは、tar, gzip, libc, dpkg, dash とそれらが依存しているパッケージ以外の不可
           欠パッケージで動作します。

       Cache-Start, Cache-Grow, Cache-Limit
           APT は、バージョン 0.7.26 から、利用できる情報を格納するため、サイズ可変なメモリマップ
           キャッシュファイルを使用します。Cache-Start は、キャッシュサイズが増大していくヒントと
           して動作し、従って APT が起動時に要求するメモリ量です。デフォルト値は、20971520 バイト
           (~20 MB) です。この領域の量が、APT に利用可能になっている必要があることに注意してくだ
           さい。そうでなければ、無様に失敗することになります。そのため、メモリに制限のあるデバイ
           スで、たくさんのソースが設定され、それが増加していくシステムでは、この値をより低くして
           おくべきです。Cache-Grow は、Cache-Start が足りなくなったという領域定義イベントによ
           り、どの程度キャッシュサイズを増加させるかを、バイト数で定義します。デフォルトは
           1048576 (~1 MB) です。この値は全情報を格納できる量になるか、Cache-Limit に達するま
           で、繰り返し適用されます。Cache-Limit のデフォルトは 0 で、無制限です。Cache-Grow に 0
           をセットすると、キャッシュの自動増加を無効にします。

       Build-Essential
           構築依存関係で不可欠なパッケージを定義します。

       Get
           Get サブセクションは apt-get(8) ツールを制御します。このオプションの詳細は apt-get(8)
           の文書を参照してください。

       Cache
           Cache サブセクションは apt-cache(8) ツールを制御します。このオプションの詳細は apt-
           cache(8) の文書を参照してください。

       CDROM
           CDROM サブセクションは apt-cdrom(8) ツールを制御します。このオプションの詳細は apt-
           cdrom(8) の文書を参照してください。

ACQUIRE グループ

       オプションの Acquire グループは、パッケージのダウンロードやダウンロードに関して責任を持
       つ、様々な「取得 (acquire) 方法」 を制御します (sources.list(5) も参照)。

       Check-Valid-Until
           セキュリティ関連のオプションで、デフォルトは true です。Release ファイルの有効期限検証
           により、長期間のリプレイ攻撃を防ぎます。さらに、例えばユーザが、もう更新されないミラー
           サイトを識別するのを支援します。しかしこの機能は、ユーザのシステム時計が正確であること
           に依存しています。アーカイブメンテナは、Valid-Until ヘッダがある Release ファイルを作
           成するよう推奨されていますが、このヘッダを付与しない、またはより厳密な値が必要な場
           合、以下の Max-ValidTime オプションを使用できます。

       Max-ValidTime
           Release ファイルを作成してから (Date ヘッダ)、有効であるとみなせる最大時間 (秒数) で
           す。Release ファイル自体に Valid-Until ヘッダがある場合、その 2 つのうち、より早い日付
           が有効期間として使用されます。デフォルト値は 0 で「無期限」を表します。オプション名に
           アーカイブのラベルを付与することで、アーカイブ固有の設定を作成できます。

       Min-ValidTime
           Release ファイルを作成してから (Date ヘッダ)、有効であるとみなせる最小時間 (秒数) で
           す。Valid-Until がある頻繁に更新されるアーカイブの、ほとんど更新されない (ローカル) ミ
           ラーを使用する場合に、完全に有効期限チェックを無効にする代わりに使用してください。オプ
           ション名にアーカイブのラベルを付与することで、アーカイブ固有の設定を作成できます。

       PDiffs
           (Packages のような) インデックス全体をダウンロードするのではなく、PDiffs と呼ばれる差
           分をダウンロードしようとします。デフォルトでは True です。

           PDiffs の使用を制限するふたつのサブオプションがあります。FileLimit では、ファイルを更
           新するのに、PDiff ファイルをダウンロードできる最大数を指定します。一方、SizeLimit
           は、対象ファイルのサイズに対して、全パッチサイズの最大パーセンテージを指定します。どち
           らの制限を超えても、パッチをダウンロードする代わりに、完全なファイルをダウンロードしま
           す。

       Queue-Mode
           キューモード - Queue-Mode は、APT がどのように並列接続を行うか、host か access で指定
           できます。host は、ターゲットホストごとに 1 接続を開きます。access は、URI タイプごと
           に 1 接続を開きます。

       Retries
           リトライの回数を設定します。0 でない場合、APT は失敗したファイルに対して、与えられた回
           数だけリトライを行います。

       Source-Symlinks
           ソースアーカイブのシンボリックリンクを使用します。true がセットされているとき、可能な
           らコピーの代わりにシンボリックリンクを張ります。true がデフォルトです。

       http
           http::Proxy には、HTTP URI で使用するデフォルトプロキシを設定しま
           す。http://[[user][:pass]@]host[:port]/ という標準形で表します。ホストごとのプロキシ
           を、http::Proxy::<host> という形で指定できます。この時、プロキシを使用しないという意味
           の特殊キーワード DIRECT も使用できます。上記の設定をなにも指定しないと、環境変数
           http_proxy を使用します。

           HTTP/1.1 準拠のプロキシキャッシュの制御について 3 種類の設定があります。No-Cache はプ
           ロキシに対して、いかなる時もキャッシュを使用しないと伝えます。Max-Age は、プロキシの
           キャッシュにあるインデックスファイルの最大利用期間 (秒) を設定します。No-Store は、リ
           クエストしたアーカイブファイルを、プロキシがキャッシュに格納しないように指定します。こ
           れにより (大きな) .deb ファイルでプロキシのキャッシュが汚れるのを防げます。

           timeout オプションは、この方法でのタイムアウトまでの時間を設定します。これには、接続の
           タイムアウトとデータのタイムアウトが含まれています。

           Acquire::http::Pipeline-Depth の設定は、例えばレイテンシの高い接続で有益な、HTTP パイ
           プライン (RFC 2616 8.1.2.2 節) を有効にするのに使用できます。これにより、パイプライン
           を用いて送信する、リクエスト数を指定できます。旧バージョンの APT は、デフォルトで 10
           でしたが、HTTP/1.1 仕様に対応しないウェブサーバやプロキシの数が、増え続けることによる
           問題を回避するため、デフォルト値は 0 (= 無効) です。

           Acquire::http::AllowRedirect は APT がリダイレクトをたどるかどうかを制御します。デフォ
           ルトでは有効です。

           The used bandwidth can be limited with Acquire::http::Dl-Limit which accepts integer
           values in kilobytes per second. The default value is 0 which deactivates the limit and
           tries to use all available bandwidth. Note that this option implicitly disables
           downloading from multiple servers at the same time.

           クライアントが既知の識別子を使用する場合にのみ、プロキシがアクセスを許可する場
           合、Acquire::http::User-Agent を使用して、http でダウンロードするための、異なる
           User-Agent を設定できます。

           Acquire::http::Proxy-Auto-Detect can be used to specify an external command to
           discover the http proxy to use. Apt expects the command to output the proxy on stdout
           in the style http://proxy:port/. This will override the generic Acquire::http::Proxy
           but not any specific host proxy configuration set via Acquire::http::Proxy::$HOST. See
           the squid-deb-proxy-client(1) package for an example implementation that uses avahi.
           This option takes precedence over the legacy option name ProxyAutoDetect.

       https
           Cache-control, Timeout, AllowRedirect, Dl-Limit, proxy の各オプションは、HTTPS URI で
           も http メソッドと同様に動作します。また、明示的に値を指定しない場合のデフォルト値も同
           様です。Pipeline-Depth オプションはまだサポートしていません。

           CaInfo サブオプションは、信頼済み証明書情報の保持場所を指定します。<host>::CaInfo
           は、同様のホストごとのオプションです。Verify-Peer 真偽値サブオプションは、信頼済み証明
           書に対してサーバのホスト証明書を、検証するかどうかを決定します。<host>::Verify-Peer
           は、同様のホストごとのオプションです。Verify-Host 真偽値サブオプションは、サーバのホス
           ト名を検証するかどうかを決定します。<host>::Verify-Host は、同様のホストごとのオプショ
           ンです。SslCert は、クライアント認証に使用する証明書を決定します。<host>::SslCert
           は、同様のホストごとのオプションです。SslKey は、クライアント認証に使用する秘密鍵を決
           定します。<host>::SslKey は、同様のホストごとのオプションです。SslForceVersion は、デ
           フォルトで使用する SSL のバージョンを上書きします。'TLSv1' か 'SSLv3' という文字列を指
           定できます。<host>::SslForceVersion は、同様のホストごとのオプションです。

       ftp
           ftp::Proxy は、FTP URI を使用する際のデフォルトプロキシを設定しま
           す。ftp://[[user][:pass]@]host[:port]/ という標準形で表します。ホストごとのプロキシ
           を、ftp::Proxy::<host> という形で指定できます。この時、プロキシを使用しないという意味
           の特殊キーワード DIRECT も使用できます。上記の設定をなにも指定しないと、環境変数
           ftp_proxy を使用します。FTP プロキシを使用するには、設定ファイルに ftp::ProxyLogin ス
           クリプトを設定する必要があります。このエントリには、接続する際にプロキシサーバに送信す
           るコマンドを設定します。どのようにするのかは
           /usr/share/doc/apt/examples/configure-index.gz の例を参照してください。URI を構成する
           コンポーネントに対応する置換変数は、$(PROXY_USER), $(PROXY_PASS), $(SITE_USER),
           $(SITE_PASS), $(SITE), $(SITE_PORT) です。

           timeout オプションは、この方法でのタイムアウトまでの時間を設定します。これには、接続の
           タイムアウトとデータのタイムアウトが含まれています。

           設定のいくつかは、パッシブモードを制御するものです。一般的に、パッシブモードのままにし
           ておく方が安全で、ほぼどんな環境でも動作します。しかしある状況下では、パッシブモードが
           無効のため、代わりにポートモード FTP を使用する必要があります。この設定は、プロキシを
           通る接続や特定のホストへの接続全般に有効です (設定例はサンプル設定ファイルを参照してく
           ださい)。

           環境変数 ftp_proxy に HTTP URL を指定すると FTP over HTTP のプロキシが利用可能になりま
           す。構文は前述の http についての説明を参照してください。設定ファイルの中でこれをセット
           することはできません。また、効率が悪いため FTP over HTTP を使用するのは推奨しません。

           ForceExtended の設定は RFC2428 の EPSV コマンドと EPRT コマンドの使用を制御します。デ
           フォルトでは false で、コントロールコネクションが IPv6 の時にのみ、このコマンドを使用
           するということです。これを true にセットすると、IPv4 コネクションでも、強制的にこのコ
           マンドを使用します。ほとんどの FTP サーバは RFC2428 をサポートしていないことに注意して
           ください。

       cdrom
           cdrom メソッドを利用する URI では、設定できるオプションはマウントポイントだけで
           す。/etc/fstab で設定されているように、CD-ROM (または DVD など) ドライブのマウントポイ
           ントを cdrom::Mount に設定しなければなりません。マウントポイントが fstab に記述できな
           い場合、かわりにマウント・アンマウントコマンドも使用できます。構文は、cdrom ブロックを

               /cdrom/::Mount "foo";

           の形で記述します。スラッシュを後につけるのが重要です。アンマウントコマンドは UMount で
           指定することができます。

       gpgv
           GPGV URI 用の唯一のオプションは、gpgv に渡す追加パラメータのオプションであ
           る、gpgv::Options です。

       CompressionTypes
           acquire メソッドが理解できる、圧縮法のリストです。Packages のようなファイルは、さまざ
           まな圧縮形式が利用できます。デフォルトでは acquire メソッドは、bzip2, lzma, gzip で圧
           縮されたファイルを伸張できます。この設定では、より多くの形式を、オンザフライで追加した
           り、使用するメソッドで変更したりできます。構文は以下のようになります。

               Acquire::CompressionTypes::FileExtension "Methodname";

           また、Order サブグループを使用して、取得システムが、圧縮ファイルのダウンロードを試みる
           順番を定義できます。取得システムは先頭のものを試行し、エラーが発生すると次の圧縮タイプ
           のダウンロードを開始します。そのため、どれかを他のものより優先したい場合、単にそのタイ
           プを先頭に追加してください。まだ追加していないデフォルトタイプは、リストの最後に追加さ
           れます。つまり、

               Acquire::CompressionTypes::Order:: "gz";

           とすると、gzip で圧縮されたファイルを bzip2lzma よりも優先的に使用します。もし
           lzmagzipbzip2 よりも優先するべきなら、設定を以下のようにしてください。

               Acquire::CompressionTypes::Order { "lzma"; "gz"; };

           bz2 は自動的に追加されるため、明示する必要はありません。

           実行時に Dir::Bin::Methodname をチェックすることに注意してください。このオプションが設
           定されていると、ファイルがある場合に、この方法しか使われなくなります。例えば、bzip2 メ
           ソッド (内蔵) の設定は以下になります。

               Dir::Bin::bzip2 "/bin/bzip2";

           また、コマンドラインに指定した一覧のエントリは設定ファイルに指定したものの後、デフォル
           トエントリの前に追加されることに注意してください。この場合、設定ファイルに指定した内容
           よりも前に指定するには、オプションを直接 (一覧スタイルでなく) 指定してください。これに
           より定義された一覧が上書きされ、このタイプのもののみ定義されます。

           特殊なタイプ uncompressed は、非圧縮ファイルを優先するために使用できますが、ほとんどの
           アーカイブは非圧縮ファイルを提供しないため、ほとんどローカルミラーでのみ有効になること
           に注意してください。

       GzipIndexes
           gzip 圧縮インデックス (Packages, Sources, Translations) をダウンロードする際、ローカル
           で展開せずに、gzip で圧縮したままにします。これにより、かなりディスク領域を節約できま
           すが、ローカルパッケージキャッシュを構築する際に、CPU の能力を余計に消費します。デフォ
           ルトでは false です。

       Languages
           Languages サブセクションは、Translation ファイルをダウンロードし、APT が説明の翻訳を表
           示しようとする場合の挙動を制御します。APT はリストの先頭にある言語で、まず有効な説明を
           表示しようとします。Languages は 短い形式や長い形式の言語コードで、定義できます。すべ
           てのアーカイブが、全言語の Translation ファイルを、提供しているわけではないことに注意
           してください。長い言語コードは特に見かけません。

           デフォルトのリストには "environment" と "en" があります。"environment" はここでは特殊
           な意味があります。これは実行時に、LC_MESSAGES 環境変数から取得した言語コードに置換され
           ます。また、このリストには、同じコードが2度現れないように確認してください。LC_MESSAGES
           が "C" に設定されているだけの場合、Translation-en ファイルを (利用可能であれば) 使用し
           ます。強制的に APT が Translation ファイルを使用しないようにするに
           は、Acquire::Languages=none と設定してください。"none" はもうひとつの特殊な意味を持つ
           コードで、適切な Translation ファイルの検索を中止します。環境から実際の言語を指定され
           なかった場合、この値を用いて APT に翻訳をダウンロードさせます。そのため、以下の設定例
           では、英語ロケールの場合 "en, de" の順になり、ドイツ語ロケールの場合 "de, en" の順にな
           ります。"fr" はダウンロードされますが、フランス語ロケール ("fr, de, en" の順になる) で
           ないと、APT が使用しないことに注意してください。

               Acquire::Languages { "environment"; "de"; "en"; "none"; "fr"; };

           注意: 異なる環境 (例: 異なるユーザや他のプログラム) で APT を実行したことによる問題を
           防ぐため、/var/lib/apt/lists/ にあるすべての Translation ファイルを、リストの最後 (暗
           黙の "none" の後) に追加します。

       ForceIPv4
           When downloading, force to use only the IPv4 protocol.

       ForceIPv6
           When downloading, force to use only the IPv6 protocol.

ディレクトリ

       Dir::State セクションは、ローカル状態情報に関するディレクトリを保持します。lists は、ダウ
       ンロードしたパッケージ一覧を格納するディレクトリで、status は dpkg(1) の状態ファイルの名前
       を表します。preferences は APT の preferences ファイルの名前です。Dir::State には、/ や ./
       で始まらないサブアイテムすべてに、前に付加するデフォルトディレクトリを含んでいます。

       Dir::Cache は、ローカルキャッシュ情報に関する場所を格納しています。これは、ダウンロード済
       アーカイブの場所を示す Dir::Cache::archives と同様に、srcpkgcache と pkgcache のパッケージ
       キャッシュの場所になります。それぞれに空文字をセットすることで、キャッシュの生成を無効にで
       きます。これにより起動時に遅くなりますが、ディスク容量を節約できます。おそら
       く、srcpkgcache よりも pkgcache を無効にすることが多いと思います。Dir::State と同
       様、Dir::Cache はデフォルトディレクトリを含んでいます。

       Dir::Etc は設定ファイルの場所を格納しています。sourcelist はソースリストの場所を示し、main
       はデフォルトの設定ファイルです。(APT_CONFIG で設定ファイルを指定された場合のみ、この設定の
       効果があります)

       Dir::Parts 設定は、指定されたディレクトリから、字句単位の全ての設定断片を読みこみます。こ
       れを設定した後に、メイン設定ファイルをロードします。

       バイナリプログラムは Dir::Bin で指定します。Dir::Bin::Methods はメソッドハンドラの場所を指
       定し、gzip, bzip2, lzma, dpkg, apt-getdpkg-sourcedpkg-buildpackage, apt-cache はそれぞれプ
       ログラムの場所を指定します。

       設定項目 RootDir は特別な意味を持ちます。設定されていると、Dir:: のすべてのパスは、絶対パ
       スとして指定してもRootDir からの相対パスとなります。そのため例えば、RootDir が
       /tmp/staging にセットされており、Dir::State::status が /var/lib/dpkg/status にセットされて
       いる場合、status ファイルを /tmp/staging/var/lib/dpkg/status から探します。

       Ignore-Files-Silently リストは、断片ディレクトリの解析中に、APT が黙って無視をするファイル
       を指定します。デフォルトではそれぞれ、.disabled, ~, .bak, .dpkg-[a-z]+ で終わるもの
       が、黙って無視されます。最後のデフォルト値を見ればわかる通り、このパターンには正規表現を使
       用できます。

DSELECT での APT

       dselect(1) メソッドで APT を使用する際、いくつかの設定ディレクティブでデフォルトの動作を制
       御します。これは DSelect セクション以下にあります。

       Clean
           キャッシュクリーンモード - この値は always, prompt, auto, pre-auto, never のうちひとつ
           を取ります。always と prompt は更新後、全パッケージをキャッシュから削除します。prompt
           (デフォルト) では条件付きで削除します。auto はダウンロード不能パッケージ (例えば新バー
           ジョンで置き換えられたもの) を削除します。pre-auto はこの動作を、新パッケージをダウン
           ロードする直前に行います。

       options
           この変数の内容は、install 時のコマンドラインオプションと同様に apt-get(8) に渡されま
           す。

       Updateoptions
           この変数の内容は、update 時のコマンドラインオプションと同様に apt-get(8) に渡されま
           す。

       PromptAfterUpdate
           true の場合、dselect(1) の [U]pdate 実行時に、続行のためのプロンプトを毎回表示しま
           す。デフォルトはエラーが発生した場合のみです。

APT DPKG(1) を呼ぶ方法

       いくつかの設定項目で APT がどのように dpkg(1) を呼び出すかを制御できます。DPkg セクション
       にあります。

       options
           dpkg(1) に渡すオプションのリストです。オプションは、リスト記法を使用して指定しなければ
           なりません。また、各リストは単一の引数として dpkg(1) に渡されます。

       Pre-Invoke, Post-Invoke
           dpkg(1) を呼び出す前後で実行するシェルコマンドのリストです。options のようにリスト記法
           で指定しなければなりません。コマンドは /bin/sh を通して呼び出され、何か問題があれば
           APT が異常終了します。

       Pre-Install-Pkgs
           This is a list of shell commands to run before invoking dpkg(1). Like options this
           must be specified in list notation. The commands are invoked in order using /bin/sh;
           should any fail APT will abort. APT will pass the filenames of all .deb files it is
           going to install to the commands, one per line on the requested file descriptor,
           defaulting to standard input.

           Version 2 of this protocol dumps more information, including the protocol version, the
           APT configuration space and the packages, files and versions being changed. Version 3
           adds the architecture and MultiArch flag to each version being dumped.

           The version of the protocol to be used for the command cmd can be chosen by setting
           DPkg::Tools::options::cmd::Version accordingly, the default being version 1. If APT
           isn't supporting the requested version it will send the information in the highest
           version it has support for instead.

           The file descriptor to be used to send the information can be requested with
           DPkg::Tools::options::cmd::InfoFD which defaults to 0 for standard input and is
           available since version 0.9.11. Support for the option can be detected by looking for
           the environment variable APT_HOOK_INFO_FD which contains the number of the used file
           descriptor as a confirmation.

       Run-Directory
           APT は dpkg(1) を呼び出す前にこのディレクトリに移動します。デフォルトは / です。

       Build-options
           これらのオプションは、パッケージのコンパイル時に dpkg-buildpackage(1) に渡されます。デ
           フォルトでは署名を無効にし、全バイナリを生成します。

   dpkg トリガの使い方 (および関連オプション)
       APT は、複数の dpkg(1) 呼び出しトリガを、積極的に行わせる方法で dpkg(1) を呼び出せます。オ
       プションがなければ、実行のたびに dpkg(1) は一度トリガを引くだけです。そのため、このオプ
       ションを有効にすると、インストールやアップグレードにかかる時間を、短くできます。将来、この
       オプションを、デフォルトで有効にする方向であることに注意してください。しかし、APT が
       dpkg(1) を呼ぶ方法といった大幅な変更を行うには、もっとたくさんのテストが必要です。したがっ
       て、このオプションは現在実験中で、本番環境では使用するべきではありません。さらに、すべての
       フロントエンドが、実際には全パッケージを設定中なのに、半分 (もしくはそれ以上) の時間 100%
       のままとなり、進捗レポートを壊してしまいます。

       APT がこのオプションをサポートすることや、将来このオプションが (大きな) トラブルの原因にな
       らないことは、保証されないことに注意してください。このオプションの現在のリスクと問題を理解
       し、テストを手伝う十分な勇気があるなら、新しい設定ファイルを作成し、オプションの組み合わせ
       のテストをお願いしたいです。遭遇したどんなバグ、問題、改善点を、どのようなオプションを使用
       したかと添えて報告してください。デバッグに役立つ可能性のある情報を dpkg(1) に問い合わせる
       ことを提案します (例: dpkg --audit を参照)。防御的なオプションの組み合わせは、以下のように
       なります。

           DPkg::NoTriggers "true";
           PackageManager::Configure "smart";
           DPkg::ConfigurePending "true";
           DPkg::TriggersPending "true";

       DPkg::NoTriggers
           dpkg(1) を呼び出すすべてのフラグ (ConfigurePending 呼び出し以外) を付与しません。実際
           にこれが何を意味するのか興味があるなら、dpkg(1) を参照してください。要するに、追加呼び
           出しで明示的に呼び出されない限り、このフラグがあると、dpkg(1) はトリガを実行しませ
           ん。また、古いバージョンの APT に、意味がわずかに異なる、このオプションが存在すること
           に注意してください (ドキュメントなし)。以前のこのオプションは、dpkg(1) の呼び出し設定
           に、--no-triggers を追加するだけでした。現在 APT は、このフラグを、展開呼び出しや削除
           呼び出しにも追加します。

       PackageManager::Configure
           有効な値は "all", "smart", "no" です。デフォルト値は "all" で、APT にすべてのパッケー
           ジを設定させます。"smart" では、他のパッケージを展開する前に、設定が終わっていなければ
           ならないパッケージ (事前依存) のみを設定し、残りを ConfigurePending オプション (後述)
           で生成した dpkg(1) 呼び出しで設定します。他方では、"no" は何も設定しません。設定につい
           ては dpkg(1) にすべて依存します (事前依存があると失敗します)。このオプションを all 以
           外の値に設定すると、次のオプションを暗黙的に有効にします。そうしないと、設定が完了せ
           ず、起動しなくなる可能性があるからです。

       DPkg::ConfigurePending
           このオプションがセットされると、dpkg(1) にすべての必要な設定とトリガを扱わせるよう
           に、APT は dpkg --configure --pending を呼び出します。前述のオプションが all に設定さ
           れていない場合、このオプションは、デフォルトで有効となります。しかし、APT を複数回連続
           して実行する場合 (インストーラなど) には、無効にしたほうが便利かもしれません。このシナ
           リオでは、最後以外のすべての実行で、無効にできます。

       DPkg::TriggersPending
           installed として認識されない保留トリガがあるパッケージを、smart 設定するのに便利で
           す。dpkg(1) は現在、先行依存関係には無力な unpacked として扱います (debbugs #526774 参
           照)。このパッケージを設定するのに必要なトリガのみでなく、すべてのトリガを処理すること
           に注意してください。

       OrderList::Score::Immediate
           不可欠パッケージ (と、その依存しているパッケージ) は展開を終えると、すぐに設定するべき
           です。アップグレードプロセスの初期に、設定してしまうのが良いのですが、現在
           DPkg::TriggersPending を要求しているパッケージも同時に行うため、かなり多くのトリガ (す
           べてが必要とは限らない) を処理することになります。不可欠パッケージは、デフォルトではス
           コアを高く設定されていますが、即時フラグは相対的に低くなっています (先行依存パッケージ
           のほうが高い)。このオプションと、これと同じグループに属するものは、このスコア付けを変
           更するのに使用します。以下の例では、デフォルト値を変更しています。

               OrderList::Score {
                    Delete 500;
                    Essential 200;
                    Immediate 10;
                    PreDepends 50;
               };

PERIODIC オプションと ARCHIVES オプション

       オプションの APT::Periodic グループと APT::Archives グループは、/etc/cron.daily/apt スクリ
       プトを使用して、apt の定期更新の挙動を設定します。このオプションのドキュメントは、このスク
       リプトの先頭を参照してください。

デバッグオプション

       Debug:: セクションのオプションを有効にすると、apt ライブラリを利用するプログラムの標準エ
       ラー出力に、デバッグ情報を送るようになったり、主に apt の挙動をデバッグするのに便利な、特
       殊モードを有効にしたりできます。普通のユーザには、ほとんどのオプションは興味がないでしょう
       が、以下のものは興味を引くかもしれません。

       ·   Debug::pkgProblemResolver は、dist-upgrade, upgrade, install, remove, purge で行われた
           判断についての出力を有効にします。

       ·   Debug::NoLocking はファイルロックをすべて無効にします。これは、非 root ユーザとして操
           作 (例えば apt-get -s install) を行う場合に使用します。

       ·   Debug::pkgDPkgPM は apt が実際に dpkg(1) を起動する際の各コマンドラインを表示します。

       ·   Debug::IdentCdrom は CD-ROM ID にある statfs データを含めないようにします。

       以下は apt に対するデバッグオプションのすべてです。

       Debug::Acquire::cdrom
           cdrom:// ソースへのアクセスに関する情報を出力します。

       Debug::Acquire::ftp
           FTP を用いたパッケージのダウンロードに関する情報を出力します。

       Debug::Acquire::http
           HTTP を用いたパッケージのダウンロードに関する情報を出力します。

       Debug::Acquire::https
           HTTPS を用いたパッケージのダウンロードに関する情報を出力します。

       Debug::Acquire::gpgv
           gpg を用いた暗号署名の検証に関する情報を出力します。

       Debug::aptcdrom
           CD-ROM にあるパッケージ集合に対して、アクセスするプロセスについての情報を出力します。

       Debug::BuildDeps
           apt-get(8) での構築依存関係解決のプロセスを説明します。

       Debug::Hashes
           apt ライブラリが生成した、暗号化ハッシュを出力します。

       Debug::IdentCDROM
           CD-ROM の ID を生成する際に statfs という、CD-ROM ファイルシステムにある使用済・未使用
           ブロックの数からの情報を含めないようにします。

       Debug::NoLocking
           ファイルのロックをすべて無効にします。例えば、同時にふたつの 「apt-get update」 を実行
           できるようになります。

       Debug::pkgAcquire
           グローバルダウンロードキューに対する項目の追加・削除の際にログを出力します。

       Debug::pkgAcquire::Auth
           ダウンロードしたファイルのチェックサムや暗号署名の確認に関する、状態メッセージやエラー
           を出力します。

       Debug::pkgAcquire::Diffs
           パッケージインデックスリスト差分のダウンロード・適用時の、情報やエラーを出力します。

       Debug::pkgAcquire::RRed
           インデックス全体ではなくインデックス差分のダウンロードの際に、apt パッケージリストへの
           パッチ適用に関する情報を出力します。

       Debug::pkgAcquire::Worker
           実際のダウンロードを行う際の、サブプロセスとのやりとりをログに出力します。

       Debug::pkgAutoRemove
           パッケージの自動インストールや、不要パッケージの削除に関するイベントを、ログに出力しま
           す。

       Debug::pkgDepCache::AutoInstall
           依存関係解決のために、どのパッケージが自動的にインストールされたかのデバッグメッセージ
           を生成します。これは完全な apt 依存関係解決プログラム (Debug::pkgProblemResolver を参
           照) ではなく、例えば apt-get install で実行された、初期の自動インストール経路に対応し
           ています。

       Debug::pkgDepCache::Marker
           ProblemResolver が動作する際に、一時保留・インストール・削除としてマークされたパッケー
           ジに関する、デバッグメッセージを生成します。各追加・削除は追加アクションのトリガとな
           り、これをオリジナルのエントリの下に、空白 2 個でインデントして表示します。各行
           は、MarkKeep, MarkDelete, MarkInstall となり、package-name <a.b.c -> d.e.f | x.y.z>
           (section) が続きます。ここで、a.b.c は、そのパッケージの現在のバージョン、d.e.fは、イ
           ンストール予定のバージョン、x.y.z はより新しいけれどインストール対象外のバージョン
           (pin のスコアが低いため) です。後のふたつは、存在しない、ないしインストール中のバー
           ジョンと同じ場合、省略されます。section はパッケージが現れるセクション名です。

       Debug::pkgDPkgPM
           dpkg(1) 起動時に、起動した際の正確なコマンドラインを出力します。引数は空白で区切られま
           す。

       Debug::pkgDPkgProgressReporting
           状態ファイルディスクリプタに、dpkg(1) から受信したすべてのデータと、そのデータを解析中
           に発生したエラーを出力します。

       Debug::pkgOrderList
           apt が dpkg(1) にパッケージを渡す順番を決める、アルゴリズムのトレースを生成します。

       Debug::pkgPackageManager
           dpkg(1) を呼び出す際に、実行手順を追跡した状態メッセージを出力します。

       Debug::pkgPolicy
           起動時の各パッケージの優先度を表示します。

       Debug::pkgProblemResolver
           依存関係解決システムの実行内容を追跡します (これは複雑な依存関係の問題に遭遇した場合に
           のみ、適用されます)。

       Debug::pkgProblemResolver::ShowScores
           全インストール済みパッケージの、pkgProblemResolver が計算したスコアを一覧表示しま
           す。パッケージの説明は、Debug::pkgDepCache::Marker で説明したものと同じです。

       Debug::sourceList
           /etc/apt/vendors.list から読み込んだ、ベンダの情報を出力します。

       Debug::RunScripts
           Display the external commands that are called by apt hooks. This includes e.g. the
           config options DPkg::{Pre,Post}-Invoke or APT::Update::{Pre,Post}-Invoke.

サンプル

       /usr/share/doc/apt/examples/configure-index.gz は、全利用可能オプション値のサンプルを参照
       できる、設定ファイルのサンプルです。

ファイル

       /etc/apt/apt.conf
           APT 設定ファイル。 設定項目: Dir::Etc::Main

       /etc/apt/apt.conf.d/
           APT 設定ファイル断片。 設定項目: Dir::Etc::Parts

関連項目

       apt-cache(8), apt-config(8), apt_preferences(5).

バグ

       APT バグページ[1] をご覧ください。 APT のバグを報告する場合は、
       /usr/share/doc/debian/bug-reporting.txt や reportbug(1) コマンドをご覧ください。

翻訳

       倉澤 望 <nabetaro@debian.or.jp> (2003-2006,2009-2012), Debian JP Documentation ML
       <debian-doc@debian.or.jp>

       この翻訳文書には未訳部分が含まれていることに注意してください。 翻訳がオリジナルに追従でき
       ていない場合、 内容を失わないようにこのようにしています。

著者

       Gunthorpe Jason[FAMILY Given]

       [FAMILY Given]

       Burrows Daniel[FAMILY Given] <dburrows@debian.org>
           Debug::* に関する最初のドキュメント

注記

        1. APT バグページ
           http://bugs.debian.org/src:apt