Provided by: apt_1.2.35_amd64 ![bug](/img/bug.png)
![bug](/img/bug.png)
名前
sources.list - APT のデータ取得元の設定リスト
説明
取得元リスト /etc/apt/sources.list と /etc/apt/sources.list.d/ に含まれるファイルは、複数の取得元や様々な メディアをサポートするよう設計されています。ファイルは、1 行に一つの取得元をリストする (1 行スタイル) か またはスタンザごとに複数の取得元を定義し、(シングルバージョンが複数の取得元から入手可能である場合には) 最 も好ましい取得元を先頭に置く複数行のスタンザ (deb822 スタイル) を含みます。設定した取得元から利用可能な情 報は、apt-get update (や、ほかの APT フロントエンドの同等のコマンド) で取得します。
SOURCES.LIST.D
/etc/apt/sources.list.d ディレクトリは、別々のファイルで source.list のエントリを追加する方法を提供しま す。次の二つの節で説明するように、二つの異なるファイル形式が許可されています。ファイル名は、含まれている 形式に応じて .list または .sources のいずれかの拡張子を持っている必要があります。ファイル名は、文字 (a-z と A-Z)、数字 (0-9)、アンダースコア (_)、ハイフン (-)、ピリオド (.) のみを含むことができます。そうでなけ れば、Dir::Ignore-Files-Silently 設定リストのパターンに一致するもの以外に対して、ファイルを無視するという 注意を APT が出力します。一致する場合は黙って無視します。
1 行スタイル形式
この形式のファイルは、.list 拡張子を持っています。取得元を指定する各行は、この型のオプションと引数が続く 型 deb-src から始まります。個々のエントリは、次の行に継続することはできません。空行は無視され、行の任意の 位置の # 文字はコメントとして行の残りの部分をマークします。したがって行全体をコメントアウトすることによっ て、エントリを無効にすることができます。オプションが提供されている場合、スペースで区切られ、すべて角カッ コ ([]) で囲まれていて、行の中でスペースで区切られた型の後ろに含まれます。複数の値が許されるオプションの 場合、カンマ (,) で分離されています。オプション名は、イコール記号 (=) で分離されます。複数値のオプション も -= および += をセパレータとして持ち、デフォルト値から与えられた値を削除するか、またはデフォルト値に与 えられた値を含めます。 伝統的な形式とすべての apt のバージョンでサポートされています。下記のようにすべてのオプションがすべての apt のバージョンでサポートされているわけでないことに注意してください。いくつかの古いアプリケーション は、自分でこの形式をパースするので、マルチアーキテクチャのサポートの導入前には珍しいオプションに遭遇する ことを期待しないかもしれないことに注意してください。
DEB822 スタイル形式
この形式のファイルは、.sources 拡張子を持っています。形式は、設定された取得元または Debian ソースパッケー ジの debian/control ファイルから apt がダウンロードするメタデータファイルのような、Debian とその派生で使 用されるほかのファイルの構文と似ています。個々のエントリは空行で分離されています: 追加の空行は無視さ れ、行頭の # 文字は、コメントとして行全体をマークします。エントリは、スタンザに属する各行をコメントアウト して無効にすることができますが、通常は "Enabled: no" フィールドスタンザに追加してエントリを無効にする方が 簡単です。フィールドを削除するか、そのフィールドを yes に設定すると、再び有効にできます。オプションは、ほ かのすべてのフィールドと同じ構文を持っています: フィールド名はコロン (:) で区切られ、必要に応じてその値か ら空白を空けます。特に、1 行形式では、複数の値は空白で区切られ、コンマではないことに注意してくださ い。Architectures のような複数値のフィールドは、設定を置き換えるのではなく、デフォルト値を変更する Architectures-Add および Architectures-Remove を持っています。 バージョン 1.1 以降の apt 自身によりサポートされる新しい形式です。前述のように以前のバージョンでは、通知 メッセージでそのようなファイルを無視します。多くのソースおよび/またはオプションが関与している場合は特 に、人間と機械を問わず、作成、拡張、変更を簡単にするために、先に述べた 1 行スタイル形式を非推奨に し、徐々にこの形式をデフォルト形式にすることが意図されています。apt ソースを作業および/またはパースしてい る開発者は、このフォーマットのサポートを追加することと、調整するために APT チームに連絡すること、この作業 を共有することをお勧めします。ユーザはすでに自由にこの形式を採用することができますが、この形式をまだサ ポートしていないソフトウェアで問題が発生する場合があります。
DEB および DEB-SRC タイプ: 一般形式
deb タイプでは典型的な 2 段階の Debian アーカイブ distribution/component を参照します。distribution は通 常 stable や testing または jessie や stretch のようなコード名になります。component は、main, contrib, non-free のどれかです。deb-src タイプでは、debian ディストリビューションのソースコードを、deb タイプと同 じ形式で参照します。deb-src 行は、ソースインデックスを取得するのに必要です。 deb および deb-src タイプで使用する 2 つの 1 行スタイルのエントリの形式は、以下のようになります: deb [ option1=value1 option2=value2 ] uri suite [component1] [component2] [...] deb-src [ option1=value1 option2=value2 ] uri suite [component1] [component2] [...] 他に deb822 スタイルで同等のエントリもサポートしています: Types: deb deb-src URIs: uri Suites: suite Components: [component1] [component2] [...] option1: value1 option2: value2 deb タイプの URI は、APT が必要な情報を見つけられるように、Debian ディストリビューションの基底を指定しな ければなりません。スイートには正確なパスを指定できます。その場合コンポーネントを省略し、スイートはスラッ シュ (/) で終わらなくてはなりません。これは URL で指定されたアーカイブの、特定のサブディレクトリのみに関 心があるときに役に立ちます。スイートに正確なパスを指定しないのなら、少なくとも一つは コンポーネント を指 定しなければなりません。 スイート は、$(ARCH) 変数を含む場合があります。$(ARCH) 変数は、システムで使用している Debian アーキテク チャ (amd64 や armel など) に展開されます。これにより、アーキテクチャに依存しない sources.list ファイルを 使用できます。一般的に、これは正しいパスを指定するときに気にするだけです。そうでない場合は、APT は現在の アーキテクチャで URI を自動的に生成します。 特に 1 行スタイル形式では 1 行につき 1 つのディストリビューションしか指定できないため、同じ URI の行を複 数記述することになるでしょう。APT は内部で URI リストを生成してから、並べ替えます。そして、同じインター ネットホストに対しては複数の参照をまとめます。例えば FTP 接続後、切断してからまた同じホストに再接続すると いった効率の悪いことをせずに、1 接続にまとめます。APT は、帯域の狭いサイトを効率よく扱うため異なるホスト へは接続を並行して行うようにもしています。 最優先する取得元を最初に記述するというように、優先順に取得元を記述するのは重要です。一般的には、スピード の速い順に並べることになる (例えば、CD-ROM に続いてローカルネットワークのホスト、さらに続いて彼方のイン ターネットホスト) でしょう。 例として、あなたのディストリビューション用のソースは、1 行スタイル形式で次のようになります: deb http://us.archive.ubuntu.com/ubuntu xenial main restricted deb http://security.ubuntu.com/ubuntu xenial-security main restricted deb http://us.archive.ubuntu.com/ubuntu xenial-updates main restricted または deb822 スタイル形式でこのようになります: Types: deb URIs: http://us.archive.ubuntu.com/ubuntu Suites: xenial xenial-updates Components: main restricted Types: deb URIs: http://security.ubuntu.com/ubuntu Suites: xenial-security Components: main restricted
DEB および DEB-SRC タイプ: オプション
各取得元エントリは、アクセスされる取得元や取得されるデータを変更するために指定するオプションを持つことが できます。オプションの形式、構文と名前は、記載されているように 1 行スタイルと deb822 スタイルの間で異なり ますが、どちらも同じオプションが用意されています。簡単にするために、deb822 フィールド名を一覧表示し、カッ コ内に 1 行の名前を提供します。明示的に複数の値を持つオプションを設定する以外に、デフォルトをベースに変更 するためのオプションもあることを忘れないでください。ここでは明示的にそれらの名前はリストしていません。サ ポートされていないオプションは、すべての APT バージョンで黙って無視されます。 • Architectures (arch) は複数の値を持つオプションで、どのアーキテクチャ情報をダウンロードするか指定しま す。このオプションを指定しないと、APT::Architectures 設定オプションに定義してあるすべてのアーキテク チャをダウンロードします。 • arch=arch1,arch2,... により、どのアーキテクチャ情報をダウンロードするか指定します。このオプションを 指定しないと、APT::Architectures オプションに定義してある全アーキテクチャをダウンロードします。 • Targets (target) は、apt が取得元から取得しようとするダウンロードターゲットを定義する複数の値を持つオ プションです。指定しない場合、デフォルトセットは、Acquire::IndexTargets 設定スコープで定義されま す。さらに、具体的なターゲットは、この複数の値を持つオプションの使用の代わりにフィールド名など識別子 を使用して有効または無効にすることができます。 • PDiffs (pdiffs) は、新しいインデックスを完全にダウンロードする代わりに、古いインデックスを更新するた め PDiffs を使用するかどうかを制御する yes/no 値です。レポジトリが PDiffs の提供を公開していない場合 は、このオプションの値は無視されます。Acquire::IndexTargets スコープ中に定義された特定のインデックス ファイル用の同じ名前のオプション値がデフォルトになり、設定オプション Acquire::PDiffs のデフォルト値は yes です。 • By-Hash (by-hash) は、yes、no または force の値を持つことができます。そして、APT がインデックスのよく 知られた安定版の名前を使用する代わりに、期待されるファイルのハッシュ値から構築された URI を経由してイ ンデックスを取得するかどうかを制御します。これを使用すると、ハッシュ値の不一致を避けることができます が、ミラーのサポートを必要とします。この取得元がそのサポートを示す場合、yes または no の値は、この機 能の使用を有効化/無効化します。force は取得元が示すものに関係なく、機能を有効にしま す。Acquire::IndexTargets スコープ中に定義された特定のインデックスファイル用の同じ名前のオプション値 がデフォルトになり、設定オプション Acquire::By-Hash のデフォルト値は yes です。 さらに、設定が同じ URI とスイートのすべての取得元に影響する場合のオプションがあり、このようなすべてのエン トリに設定する必要があり、異なる要素間で変化することができません。APT はこのような異常を検出してエラー出 力しようとします。 • Trusted (trusted) は、APT の判断のデフォルトのトライステート値で、取得元が信頼できる、以前警告が発生 した (例えば、パッケージをこの取得元からインストールしたときに)、信頼できないの 3 値です。このオプ ションは、APT の決定を上書きするために使用することができます。値 yes は、それが認証チェックに合格しな い場合であっても、この取得元が信頼できると考えられることを常に APT に伝えます。apt-secure(8) の一部を 無効にするので、(すべてであれば) ローカルおよび信頼されたコンテキストでのみ使用するべきです。そうしな ければ、セキュリティが破られます。値 no は反対のことを行います。認証チェックに合格した場合でも取得元 を信頼できないとして扱います。デフォルト値は明示的に設定することはできません。 • Signed-By (signed-by) は、(_apt ユーザがアクセス可能かつ読み取り可能な必要があり、つまりすべてのユー ザがファイルの読み取り権限を持っている) キーリングファイルへの絶対パスまたは trusted.gpg キーリング中 または trusted.gpg.d/ ディレクトリ中のキーリングの一つのいずれかのキーのフィンガープリントです (apt-key fingerprint を参照)。オプションが設定されている場合、キーリング中のキーのみまたはこのフィン ガープリントのキーのみが、このリポジトリの the apt-secure(8) 検証で使用されます。それ以外の場合は、信 頼できるキーリング内のすべてのキーは、このリポジトリの有効な署名者とみなされています。 • Check-Valid-Until (check-valid-until) は、APT がリプレイ攻撃を検出するかどうかを制御する yes/no 値で す。リポジトリの作成者は、リポジトリに提供されたデータが有効とみなされる時間を宣言することができま す。そして、この時間に達しているが、新しいデータが提供されていない場合、データが期限切れになったとみ なされ、エラーが発生します。セキュリティを高めることに加えて、新しいバージョンにアップグレードする ユーザを守るために、悪意のある攻撃者が古いデータを永遠に送れないようにすることで、長期間更新されてい ないミラーをユーザが特定するのに役立ちます。しかしながら、歴史的アーカイブなど、いくつかのリポジトリ は、設計によりこれ以上更新されないので、このオプションを no に設定することで、このチェックを無効にす ることができます。設定オプション Acquire::Check-Valid-Until の値がデフォルトになり、そのデフォルトは yes です。 • Valid-Until-Min (valid-until-min) および Valid-Until-Max (valid-until-max) は、このリポジトリからの データの有効期間 (秒単位) を上げたり下げたりするために使用することができます。リポジトリが独自の値を 設定するリリースファイルに Valid-Until フィールドがないものを提供する場合、-Max は特に有用です。-Min は完全にチェックを無効にする代わりに (sources.list 同様にある) より頻繁に更新があるミラーの、あまりア クセスされないアーカイブの有効期間を増やすことができます。設定オプション Acquire::Min-ValidTime およ び Acquire::Max-ValidTime の値がデフォルトになり、その両方のデフォルト値は unset です。
URI の仕様
現在認識できる URI タイプは以下のとおりです: file file スキームは、システム内の任意のディレクトリを、アーカイブとして扱えるようにします。これは NFS マ ウントやローカルミラーで便利です。 cdrom cdrom スキームは、APT がローカル CD-ROM ドライブを、メディア交換しながら使えるようにします。取得元リ ストに cdrom エントリを追加するには、apt-cdrom(8) プログラムを使用してください。 http http スキームはアーカイブとして、HTTP サーバを指定します。環境変数 http_proxy が、http://server:port/ と言った形で指定されていれば、http_proxy で指定したプロキシサーバを使用します。ユーザ認証が必要な HTTP/1.1 プロキシの場合、http://user:pass@server:port/ という形で指定してください。この認証方法は安全 ではないことに注意してください。 ftp ftp スキームは、アーカイブに FTP サーバを指定します。APT の FTP の振る舞いは、高度に設定できます。詳 細は、apt.conf(5) のマニュアルページをご覧ください。FTP プロキシは、ftp_proxy 環境変数で指定すること に注意してください。この環境変数、さらにこの環境変数のみを使用して、HTTP プロキシを使用できます (HTTP プロキシサーバは大抵 FTP URL も理解できます)。設定ファイルで HTTP を利用するプロキシが指定してあって も、無視されます。 copy copy スキームは、file スキームと同様ですが、パッケージをその場で使用せず、キャッシュディレクトリにコ ピーするところが違います。リムーバブルメディアを使用していて、APT でコピーを行う場合に便利です。 rsh, ssh rsh/ssh メソッドは、与えられたユーザでリモートホストに接続し、ファイルにアクセスするのに rsh/ssh を使 用します。あらかじめ rhosts や RSA キーの設定をしておくことをお勧めします。リモートホストからのファイ ル転送に、標準の find コマンドと dd コマンドを使用します。 さらに認識できる URI タイプの追加 APT は他の追加パッケージ (apt-transport-method という命名規則) により、より多くの方法を使えるよう拡張 できます。例えば、APT チームは、http メソッドと似た機能で HTTPS URI でのアクセス方法を提供する apt-transport-https パッケージも保守しています。使用するメソッドには、例えば debtorrent も利用できま す。apt-transport-debtorrent(1) を参照してください。
サンプル
/home/apt/debian に格納されている stable/main, stable/contrib, stable/non-free 用のローカル (または NFS) アーカイブを使用します。 deb file:/home/apt/debian stable main contrib non-free Types: deb URIs: file:/home/apt/debian Suites: stable Components: main contrib non-free 上記と同様ですが、不安定版 (開発版) を使用します。 deb file:/home/apt/debian unstable main contrib non-free Types: deb URIs: file:/home/apt/debian Suites: unstable Components: main contrib non-free 上記のソースの指定は以下のようになります。 deb-src file:/home/apt/debian unstable main contrib non-free Types: deb-src URIs: file:/home/apt/debian Suites: unstable Components: main contrib non-free 1 行目は APT::Architectures にあるアーキテクチャのパッケージ情報を取得し、2 行目は常に amd64 アーキテク チャと armel アーキテクチャのパッケージ情報を取得します。 deb http://httpredir.debian.org/debian jessie main deb [ arch=amd64,armel ] http://httpredir.debian.org/debian jessie main Types: deb URIs: http://httpredir.debian.org/debian Suites: jessie Components: main Types: deb URIs: http://httpredir.debian.org/debian Suites: jessie Components: main Architectures: amd64 armel archive.debian.org のアーカイブに HTTP アクセスし、hamm/main のみを使用します。 deb http://archive.debian.org/debian-archive hamm main Types: deb URIs: http://archive.debian.org/debian-archive Suites: hamm Components: main ftp.debian.org のアーカイブに FTP アクセスし、debian ディレクトリ以下の jessie/contrib のみを使用します。 deb ftp://ftp.debian.org/debian jessie contrib Types: deb URIs: ftp://ftp.debian.org/debian Suites: jessie Components: contrib ftp.debian.org のアーカイブに FTP アクセスし、debian ディレクトリ以下の unstable/contrib のみを使用しま す。sources.list に上記サンプルと一緒に指定された場合、両方のリソース行に対応する FTP セッションはひとつ だけになります。 deb ftp://ftp.debian.org/debian unstable contrib Types: deb URIs: ftp://ftp.debian.org/debian Suites: unstable Components: contrib ftp.tlh.debian.org のアーカイブに HTTP アクセスし、universe ディレクトリ以下を使用します。また、i386 マシ ンでは unstable/binary-i386 以下にあるファイル、amd64 マシンでは unstable/binary-amd64 以下にあるファイ ル、その他サポートするアーキテクチャごとのファイルのみ使用します。[このサンプルは変数展開の使用法の説明で しかないことに注意してください。公式 debian アーカイブはこのような構造になっていません] deb http://ftp.tlh.debian.org/universe unstable/binary-$(ARCH)/ Types: deb URIs: http://ftp.tlh.debian.org/universe Suites: unstable/binary-$(ARCH)/ 安定版、テスト版、不安定版スイートからバイナリパッケージやソース、およびmain と contrib コンポーネントを 入手するため HTTP を使用しています。 deb http://httpredir.debian.org/debian stable main contrib deb-src http://httpredir.debian.org/debian stable main contrib deb http://httpredir.debian.org/debian testing main contrib deb-src http://httpredir.debian.org/debian testing main contrib deb http://httpredir.debian.org/debian unstable main contrib deb-src http://httpredir.debian.org/debian unstable main contrib Types: deb deb-src URIs: http://httpredir.debian.org/debian Suites: stable testing unstable Components: main contrib
関連項目
apt-get(8), apt.conf(5)
バグ
APT バグページ[1] をご覧ください。 APT のバグを報告する場合は、 /usr/share/doc/debian/bug-reporting.txt や reportbug(1) コマンドをご覧ください。
翻訳
倉澤 望 <nabetaro@debian.or.jp> (2003-2006,2009-2012), Takuma Yamada <tyamada@takumayamada.com> (2016), Debian JP Documentation ML <debian-doc@debian.or.jp> この翻訳文書には未訳部分が含まれている可能性があることに 注意してください。 翻訳がオリジナルに追従できて いない場合、 内容を失わないようにこのようにしています。
著者
Gunthorpe Jason[FAMILY Given] [FAMILY Given]
注記
1. APT バグページ http://bugs.debian.org/src:apt