CDリポジトリとソフトウェアリポジトリは2つの異なるコンポーネントです(これらには別々のLaunchpadページがあります:cdmirrorsとarchivemirrors)。したがって、それらのミラーリングは2つの異なるタスクです。さらに、さまざまなフレーバーはCDリポジトリに異なるフォルダーを持っていますが、ソフトウェアリポジトリを共有しています。したがって、フレーバーごとにイメージを選択的にミラーリングできますが、ソフトウェアはミラーリングできません。ソフトウェアリポジトリでは、以下に基づいて選択的にミラーリングできます。
- リリース(
trusty、preciseなど)
- アーキテクチャ(
amd64、i386等)
- パッケージタイプ(バイナリ[
deb]とソース[ deb-src])
- チャネル(
trusty、trusty-updates、trusty-backports、等)
- セクション(
main、multiverse等)
ソフトウェアリポジトリをミラーリングするには、を使用しますapt-mirror。
apt-mirrorを使用して設定されます/etc/apt/mirror.list。これはと非常によく似た形式ですsources.list。パッケージによってインストールされる構成ファイルには、デフォルトをリストするいくつかのコメント化されたオプションがあります。必要に応じて、コメントを外して変更できます。
リポジトリをミラーリングするには、次のmirror.listように行を追加する必要がありますsources.list。
deb http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
デフォルトでは、ホストのアーキテクチャのみamd64をミラーリングするため、64ビットのUbuntuを使用している場合は、ミラーリングのみが行われます。フォームの別の行を追加する必要があります:
deb-i386 http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
そしてソースパッケージの場合:
deb-src http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
かなり完全なミラーを探している場合は、これらの行が最小になります(-updatesチャネルもお勧めします)。
deb http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
deb http://us.archive.ubuntu.com/ubuntu trusty-security main multiverse restricted universe
deb-i386 http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
deb-i386 http://us.archive.ubuntu.com/ubuntu trusty-security main multiverse restricted universe
最後に、clean行を追加して、リポジトリで使用できなくなったパッケージが削除のためにフィルターされるようにする必要があります。
clean http://us.archive.ubuntu.com/ubuntu
変数が次のようになっているとします(デフォルト):
set base_path /var/spool/apt-mirror
set mirror_path $base_path/mirror
set skel_path $base_path/skel
set var_path $base_path/var
set cleanscript $var_path/clean.sh
次に:
- リポジトリは
$mirror_path/parent-hostname/directory(so /var/spool/apt-mirror/mirror/us.archive.ubuntu.com/ubuntu)にミラーリングされます
clean.sh(セットされるrm時代遅れのパッケージとディレクトリを削除するコマンド)になります/var/spool/apt-mirror/var/clean.sh。
- ログはに送られ
/var/spool/apt-mirror/varます。
apt-mirrorパッケージには、cronジョブ(インストールし/etc/cron.d/apt-mirrorます(含む行のコメントを外すことで有効にするために編集する必要があります)、 /usr/bin/apt-mirror)。実行するcronジョブも追加する必要がありますclean.sh(私は毎週実行しています)。
もちろん、好きなhttp://us.archive.ubuntu.com./ubuntuミラーに置き換える必要があります。