deb822 ソース形式(.sources)
Debian 12 で導入され、Debian 13 (Trixie) でデフォルトとなった deb822 形式は、より明確でメンテナンスしやすいソフトウェアリポジトリ設定方法です。.sources 拡張子を使用し、各リポジトリを複数行の「キー: 値」形式で記述します。従来の一行 deb 記法に代わるものです。
従来形式 vs deb822 形式
従来の一行形式(/etc/apt/sources.list):
deb http://deb.debian.org/debian trixie main contrib non-free non-free-firmware
deb http://security.debian.org/debian-security trixie-security main contrib non-free non-free-firmware
deb http://deb.debian.org/debian trixie-updates main contrib non-free non-free-firmwaredeb822 形式(/etc/apt/sources.list.d/debian.sources):
Types: deb
URIs: http://deb.debian.org/debian
Suites: trixie trixie-updates
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Types: deb
URIs: http://security.debian.org/debian-security
Suites: trixie-security
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpgDebian 13 の新規インストール後、公式リポジトリは /etc/apt/sources.list.d/debian.sources に保存され、従来の /etc/apt/sources.list は通常空か存在しません。
フィールド説明
| フィールド | 説明 |
|---|---|
Types | リポジトリタイプ。deb はバイナリパッケージ、deb-src はソースパッケージを意味します。複数指定可(スペース区切り)。 |
URIs | ミラーURL。複数指定で冗長化可能。 |
Suites | ディストリビューション/スイート(例: trixie、trixie-updates、trixie-backports)。複数指定可。 |
Components | コンポーネント。main(フリーソフトウェア)、contrib、non-free、non-free-firmware(非フリーファームウェア)。 |
Signed-By | リポジトリ検証用 GPG 公開鍵(キーリング)のパス。常に明示的に指定することを推奨します。グローバルな apt-key を使用するより安全です。 |
Enabled | オプション。no に設定すると、リポジトリを削除せずに一時的に無効化できます。 |
Architectures | オプション。アーキテクチャを制限します(例: amd64、arm64)。 |
1つの
.sourcesファイルに複数のリポジトリエントリを含めることができ、エントリ間は1行の空行で区切ります。
ワンクリック移行:apt modernize-sources
Debian 13 に含まれる APT 3.0 は公式移行コマンドを提供しており、古い一行形式を自動的に deb822 に変換します:
sudo apt modernize-sourcesこのコマンドは既存の sources.list を読み取り、同等の .sources ファイルを生成し、元のファイルを .bak としてバックアップします。実行後、sudo apt update を実行して確認してください。
サードパーティリポジトリの追加(deb822 記法)
例として、あるサードパーティリポジトリを追加します。1つ目、GPG 公開鍵をダウンロードしてキーリングに変換します(廃止された apt-key は使用しないこと):
sudo mkdir -p /etc/apt/keyrings
wget -qO - https://example.com/key.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/example.gpg2つ目、.sources ファイルを作成し、Signed-By でそのキーリングを参照します:
sudo tee /etc/apt/sources.list.d/example.sources > /dev/null <<'EOF'
Types: deb
URIs: https://example.com/debian
Suites: stable
Components: main
Signed-By: /etc/apt/keyrings/example.gpg
Architectures: amd64
EOF
sudo apt updateSigned-By はこの公開鍵をこのリポジトリのみに紐付けます。古いグローバルな apt-key よりもはるかに安全です。たとえサードパーティリポジトリが侵害されても、その鍵で公式リポジトリのパッケージを偽造することはできません。
国内ミラーの利用
公式の debian.sources の URIs を国内ミラーに変更するだけです。例: 清華大学ミラー:
Types: deb
URIs: https://mirrors.tuna.tsinghua.edu.cn/debian
Suites: trixie trixie-updates trixie-backports
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Types: deb
URIs: https://security.debian.org/debian-security
Suites: trixie-security
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg編集後は必ず sudo apt update を実行してください。
まとめ
- Debian 13 はデフォルトで deb822(
.sources)形式を使用し、ソースファイルは/etc/apt/sources.list.d/に置かれます。 sudo apt modernize-sourcesで従来形式からワンクリック移行できます。- サードパーティリポジトリを追加する際は、常に
gpg --dearmorでキーリングを生成し、Signed-Byで明示的に参照してください。apt-keyは使用しないでください。
関連情報:APT パッケージ管理 · Backports 使用ガイド