#use wml::debian::cdimage title="Debian CD イメージのミラーサイトになるには" BARETITLE=true #use wml::debian::translation-check translation="1.3"
Debian CD イメージのミラーサイトになるには、Linux か Unix 系のマシンが必要です。 イメージを取得してアクセス可能にするには、あなたの都合に合わせていくつかのやり方があります。
FTP や HTTP でイメージを入手するようにすべきでは ありません。 これらの転送方法は、巨大なイメージファイルサイズのため失敗しやすいからです。 さらに、イメージがわずかに変化した場合 (サブリリースなどの場合にこうなります) にも、全体を再ダウンロードしなければなりません。 この結果、コンピュータにもネットワークにも大きな負荷がかかります。
上記の理由から、私たちは rsync プログラムを使っています。これは本質的にはバイナリパッチを行うプログラムです。 rsync により、サブリリースのイメージを大変効率的に更新できます。 これは、変更部分だけをネットワークで転送すればよく、変更されなかった部分は以前のイメージからコピーすれば済むからです。
rsync 単体で使った場合、全く新しいリリースの際には全イメージのダウンロードが行われます。 これは、イメージ中に変更されない部分がほとんどないためです。 しかしながら、疑似イメージキットを用いれば、近くの Debian FTP ミラー (場合によってはローカルのミラー) にすでにあるデータを用いて擬似的な CD イメージを作成できますし、rsync でその疑似イメージにバイナリパッチを当てて公式版に更新することが出来ます。 さらにサブリリースの際にはたいていの場合、旧イメージにパッチを当てた方が効率がよいことも分かっています。
疑似イメージキットは、普通の人の要求に合わせて、主に一つないしは数個のイメージのみをダウンロードする目的で設計されています。 この発展形として、疑似イメージキットと rsync を自動的に使ってミラーを更新し、更にはダウンロードした各イメージの MD5 チェックサムの計算までを自動的に行ってくれる、ミラー作成を 実に 簡単にする debcdmirror スクリプトがあります。 debcdmirror では、なにをミラーするのか正確に指定することも出来ます。
というわけで、イメージを取得して最新に維持するには以下の選択肢があります。
最新の疑似イメージキットは 疑似イメージキット で、最新の debmirror は debcdmirror の、各々作者のページに置かれています。両方のパッケージの README に作業手順の詳細な情報が記載されています。
注記:
debcdmirror スクリプトでは、"ls-lR" ファイルを提供する rsync ミラーサイトを選択する必要があります。 このようなミラーサイトのアドレスは rsync ミラーリスト にあります。 公式の公開ミラーはマスターサーバ cdimage.debian.org への直接の rsync 接続が許されています。マスタサーバへの接続にはパスワードが必要になるので、 マスタサーバの管理者 に問い合わせて取得してください。
もしローカルの "通常の" Debian FTP ミラー が無い場合、FTP サイトのリスト を見てください。
debcdmirror では bash バージョン 2 以上が必要です。 必要な場合は bash を標準以外の場所にインストールすることも出来ますが、 その場合スクリプトの最初の行で bash へのパスを指定するようにしてください。
もし、rsync のみを使う場合には、少なくとも以下のオプションを使ってください。 "--times --links --hard-links --block-size=8192" これは修正時間、シンボリックリンクとハードリンクをそのまま保持し、ブロックサイズ 8192 バイトを使います (CD イメージの場合、このブロックサイズが最適です)。 修正時間とサイズが同じ場合には、rsync はファイルを変更しないので、--times は事実上必須です。
"codename_test" ディレクトリには、バージョン付きのディレクトリ以下のイメージにハードリンクされたイメージが置かれています。 バージョン付きのディレクトリ名は (サブ) リリースごとに変わりますが、 "test" ディレクトリ以下の名前は変化しません。従って rsync だけを使う環境では、バージョン付きのイメージと適切な "test" ディレクトリの両方をミラーして、同時に --hard-links オプションを指定するのがサブリリースを適切に更新するために必須です。 debcdmirror を使う場合には "test" ディレクトリは 含めない で下さい。これは debcdmirror は rsync とは異なった、かつもっと効率のよいやり方を用いているからです。
ls-lR はミラーが置かれているサイトのディレクトリ構造を記載したものです。この ls-lR ファイルをミラー しないで下さい。 自分で作成するか (提供されている "Makels-lR" を使って cron で毎時作成する)、ls-lR を全く置かないかのどちらかとしてください。 debcdmirror の場合は、ミラー作成後にローカルの ls-lR が自動的に作成されます。
ミラーしたい CD イメージ (i386 とソース CD が人気があります) を取得した後、 rsync サーバプログラムを走らせる必要があります。 これはマシンに大きな負荷はかけませんし、FTP/HTTP サービスに比べてネットワーク負荷も比較的軽いものです。 サーバの設定方法は、疑似イメージキットの README に記載されています。
もちろん、毎日数 GB のネットワーク負荷は問題がないということでしたら、 FTP/HTTP ミラーになっていただけるととてもありがたいです。 提供いただけるならばどのようなものでも結構ですので、debian-cd@lists.debian.org にミラーを運用している旨連絡くだされば、所定のページを更新いたします。