警告! この翻訳は古過ぎるため、原文を御覧ください。

Debian アーカイブミラーの構築

ミラーすべきかどうか

私たちはすべての新しいミラーに感謝しますが、 ミラーメンテナ志望の方々は、 自身のミラーを開始する前に以下の質問に答えられるかどうか確認してください。

ミラーの対象

メインのミラーページにミラーできるアーカイブのリストがあります。

ミラーサイズについてのより正確な情報については、ミラーサイズ ページを参照してください。

debian-security/ アーカイブには Debian セキュリティチームによりリリースされる、セキュリティ更新が置かれます。 これは誰しも関心をもつ対象となるでしょうが、セキュリティ更新は散発的に起こるので、 最新を保つのに頻繁なミラー処理 (あるいは push ミラー) が要求されるため、推奨しません。Debian では、代わりに security.debian.org の高い可用性を保つのにあらゆる努力をします。

ミラーのサイズについての正確な情報については、ミラーサイズのページを見てください。

どこからミラーするのか

ftp.debian.org が Debian パッケージの正当な場所で、 そこからミラーするのがベストだと考える人が多くいますが、 これは正しくありません

ftp.debian.org は内部の Debian サーバから更新しているサーバのうちの一つに過ぎません。そのアドレスは米国にある単一のサーバに目下割り当てられており、主に後方互換性のためにまだ存在します。

公式ミラーは、ここからミラーするのに適切な場所であることを意味します。

ミラー全リストにあるサーバのうち、 Type: Push-PrimaryType: Push-Secondary タグがあるものがミラー元として適切です。 その中からネットワーク的、地理的に近いものを使用してください。

ミラー処理がなされている限り、異なる Push-Primary のミラーサーバの間に実質的な違いはありません。言い換えれば、 多くの人が ftp.debian.org を使う (残念ながらそうなっています) と、 提供された帯域を活かせずに無駄にしているということになります。

米国のミラー管理者は、ftp.us.debian.org (Push-Primary ミラーである、米国での公式ミラーアドレス) からミラーすべきです。 ただし、このアドレスは複数のマシンのラウンドロビンのエイリアスでもあるので、 そのうちのどれが最適かを確認して、その特定の1つからミラーするのが普通です。
こうすることの良い面は、2段階の rsync を行うとの失敗のリスクを 避けられることです (それぞれの段階は、 その時間差の間に、競合状態を引き起こすことになる異なるデータを持つ 異なるマシンを見に行く可能性があります)。 悪い面は、このことでパフォーマンスがさまざまなな単一サイトに集中する というものですが、これは現時点では一般に私たちのミラーネットワークに つきものです。

どうやってミラーするのか

推奨するミラー方法は anonftpsync というスクリプトで匿名 rsync を使う方法です。

注意: wget やその他の ftp ツールでも可能なようですが問題があります。rsync の使用を強く推奨します。

匿名 rsync

アーカイブのミラーには anonftpsync の使用を推奨します。スクリプト内の指示に従ってミラーを構築してください。

他の方法を採りたい人に向けて:

push ミラーによる認証付きの rsync

push ミラーによるミラー作業は私たちが開発した、rsync を使ってアーカイブへの変更がミラーに行き渡るまでの時間を最小にとどめる方法です。 ミラーのサーバが ssh を使ってミラーのクライアントに更新を開始させます。

push 型のミラー作業は (ftp.us.debian.org のように DNS ラウンドロビンの別名となっているような場合に)、 複数のサーバを同期させ続けるのに必要です。また、私たちは第 1 層、 第 2 層のミラーに対してこれを使用します。「普通」のミラーについては、 この方法では要求する点が多く、うまく設定された cron ジョブに対する優位性が見出せません。

この方法は ssh はただ一つのコマンドだけを実行するように設定するのでまったく安全です。 さらに、ミラー作業はあくまで「取得」するもので、偽の push ミラーがアーカイブの内容を汚染することができるというものではありません。 この方法のミラー作業によって侵入される可能性があるのではないかという恐れにより消極的になるミラー管理者もいますが、 これは単純に間違いです。

この仕組みについて、さらに突っ込んだ説明や、どうして安全なのか、 push ミラーの構築方法については、完全な説明を参照してください。

部分的なミラー

既に Debian アーカイブのサイズは巨大になっているので、必要な一部だけのミラーをしたいという人もいます。 何か除外する場合は、アーキテクチャを除外してください。

anonftpsync の場合は、ARCH_EXCLUDE 変数を編集することで可能になります。 他にも専用に書かれたスクリプトはありますが、公式ミラーには不適です。

project/, doc/ その他のサブディレクトリについてはできるだけ除外しないようにしてください。 これらは通常、サイズは小さく、それでいてユーザにとって有益です。 特に、project/trace はミラーに問題があった場合非常に役に立ちます。

いつミラーするのか

メインのアーカイブは一日二回更新されます。 ミラーは通常 9:00 及び 21:00 (ともに UTC) 頃に更新を始めますが、 これは決まっているわけではなく、これに執着すべきでもありません。

毎日ミラー作業を行うことを推奨します。 一日三回以上ミラー作業を行うのは無意味で、 それを行った場合はおそらく弾かれることになります。 やらないようにしてください。

ミラー更新はメインのアーカイブミラーの数時間後に行うべきです。 ミラー元のサイトが project/trace/ サブディレクトリにタイムスタンプファイルを残しているか確認してください。 タイムスタンプファイルはそのサイトのような名前で、 その内容は最後のミラー更新完了時刻です。(安全を見て) これから数時間とってミラーしてください。

毎日のミラー作業を自動化するのに最も簡単なのは cron です。詳細は man crontab してください。

注: あなたのサイトが push 機構を採用する場合にはこの項目はまったく気にする必要がありません。

追加の推奨設定

Debian ミラーを HTTP から利用できるようにする場合は、Apache の設定の <Directory /path/to/your/debian/mirror> ブロック内に以下を加えてください (恐らく Apache を使っているでしょう)。 /path/to/your/debian/mirror には実際にミラーを置いているディレクトリが入ります:

   Options +Indexes +SymlinksIfOwnerMatch
   IndexOptions NameWidth=* +SuppressDescription

これによりディレクトリインデクスが有効になり、symlink 追跡が効くようになります。ディレクトリインデクスでファイル名が切られなくなり、 (ほとんど存在しない) 説明は表示されなくなります。

Apache 1.3.x においては、以下のオプションを追加することもできます。

   DirectoryIndex .

このオプションは Apache 2.x では追加しないでください。

ミラーリストにミラーを追加するには

ミラーが構築できたら、Debian に登録してミラーリストに追加してもらうようにしてください。手続きは簡単なウェブフォームから行うことができます。

問題や疑問があれば、mirrors@debian.org 宛にお願いします。