この記事では、 apt-mirrorユーティリティを使用してリポジトリのローカルコピーを作成する方法を説明します。 これは、Ubuntuのすべてのリポジトリをリストする/etc/apt/sources.listファイルと同じ構文を使用して、Ubuntuリポジトリのローカルコピーを作成するためのシンプルで便利なユーティリティです。
必要なのは、Ubuntuがインストールされ、無制限のインターネットアクセスが可能なコンピューターのみです。
1つのi386アーキテクチャのみの公式Ubuntu 10.10リポジトリのローカルコピーは36.2 GiBを占有します。これを念頭に置いてください。
そのため、インターネットに接続され、Ubuntuがインストールされているコンピューターで、たとえば次のコマンドを使用して、パッケージインストールツールを使用してapt-mirrorパッケージを配置します。
sudo apt-get install apt-mirror
次に、リポジトリのコピーを配置するディレクトリを決定する必要があります。 たとえば、リポジトリのコピーが/ media / dataディレクトリにマウントされた別のハードドライブにある/ media / data / ubuntu-repo /フォルダーに追加されると仮定します。 もちろん、指定したフォルダーに、必要なリポジトリーの完全なコピーを配置するのに十分なスペースがあることを確認する必要があります。
apt-mirrorのセットアップ
あとは、 apt-mirror構成ファイルを編集し、必要なオプションと必要なリポジトリをそこに追加して、ミラーリングプロセス自体を開始するだけです。 このファイルは/etc/apt/mirror.listと呼ばれます。 以下は、 / media / data / ubuntu-repo /フォルダーにi386アーキテクチャ用の公式Ubuntu 10.10リポジトリのコピーを作成する場合のコメント付きコンテンツです。
############# apt-mirror ################## # , set base_path /media/data/ubuntu-repo # , . # - . #set mirror_path $base_path/mirror # apt-mirror #set skel_path $base_path/skel # apt-mirror #set var_path $base_path/var # , . - , apt-mirror. set defaultarch i386 # . . set nthreads 20 set _tilde 0 ############# ############## # Canonical Ubuntu 10.10 deb http://archive.ubuntu.com/ubuntu maverick main restricted deb http://archive.ubuntu.com/ubuntu maverick-updates main restricted deb http://archive.ubuntu.com/ubuntu maverick universe deb http://archive.ubuntu.com/ubuntu maverick-updates universe deb http://archive.ubuntu.com/ubuntu maverick multiverse deb http://archive.ubuntu.com/ubuntu maverick-updates multiverse deb http://archive.ubuntu.com/ubuntu maverick-security main restricted deb http://archive.ubuntu.com/ubuntu maverick-security universe deb http://archive.ubuntu.com/ubuntu maverick-security multiverse # apt-mirror, ubuntu # (, , ) , # . clean http://archive.ubuntu.com/ubuntu
apt-mirrorを実行し、実行の終了を待つようになりました。 開始する前に、メインディレクトリ/ media / data / ubuntu-repo /と 、その中のすべての補助ディレクトリmirror 、 varおよびskelが存在し、ユーザーapt-mirrorに書き込み可能であることを確認する必要があります。 これらのディレクトリはすべてコマンドで作成できます
mkdir -p /media/data/ubuntu-repo/ mkdir -p /media/data/ubuntu-repo/{mirror,var,skel}
必要な権限を割り当てる最も簡単な方法は、 apt-mirrorユーザーを次のディレクトリに設定することです。
sudo chown -R apt-mirror /media/data/ubuntu-repo/
その後、次のコマンドでapt-mirrorを実行できます
sudo -u apt-mirror apt-mirror
インデックスをロードした後、 apt-mirrorはダウンロードされるパッケージの量を通知します。
# sudo -u apt-mirror apt-mirror Downloading 55 index files using 20 threads... Begin time: Tue Dec 21 14:53:48 2010 [20]... [19]... [18]... [17]... [16]... [15]... End time: Tue Dec 21 14:54:06 2010 Proceed indexes: [PPPPPPPPPP] 36.2 GiB will be downloaded into archive. Downloading 33541 archive files using 20 threads...
ダウンロードが完了するまで待つ必要があります。
リポジトリのローカルコピーを自動的に更新する
cronジョブを使用して、リポジトリのローカルコピーの自動更新を設定できます。 これを行うには、/ etc / cron.d / apt-mirrorファイル内のタスクの行のコメントを外します。
# # Regular cron jobs for the apt-mirror package # 0 4 * * * apt-mirror /usr/bin/apt-mirror > /var/spool/apt-mirror/var/cron.log
タスクの実行時間を変更できます(デフォルトでは、毎日04:00に)。
apt-mirrorの追加機能
上記のスキームを使用する場合、 apt-mirrorは指定されたリポジトリからのみパッケージをコピーします。 ただし、これに加えて、Ubuntuリポジトリには、ネットワークインストーラーなど、多くの有用なデータがまだ含まれています。 これらのリポジトリに対して「 clean 」命令を使用する場合、これらはすべて削除されます。これは、現在のインデックスに含まれていないためです。 一部のディレクトリを強制的にクリーンアップしないようにするには、 mirror.listファイルで目的のアドレスを使用して「 skip-clean 」命令を指定できます。 例:
# skip-clean http://archive.ubuntu.com/ubuntu/dists/lucid/main/installer-i386/ skip-clean http://archive.ubuntu.com/ubuntu/dists/lucid/main/installer-amd64/
次のように、APTリポジトリ行でアーキテクチャを直接指定できます。
# amd64 deb-amd64 http://archive.ubuntu.com/ubuntu maverick main restricted
さらに、承認が必要なHTTPおよびFTPホストに接続できます。 これを行うには、アドレスに名前、パスワード、および必要に応じてポートを指定します。
# deb http://user:pass@example.foo.org:8080/ubuntu maverick main restricted
リポジトリのローカルコピーをさらに使用する
作業の完了後、 mirror.listで指定されたすべてのリポジトリのローカルコピーは、指定されたメイン作業フォルダーapt-mirrorのmirror / repository_nameフォルダーにあります。 したがって、 mirror.listで設定されたリポジトリのコピー
deb http://archive.ubuntu.com/ubuntu maverick main restricted
私たちの場合、フォルダ/media/data/ubuntu-repo/mirror/archive.ubuntu.com/ubuntuにあります。 また、このフォルダーは、HTTPサーバーまたはFTPサーバーを使用して、またはファイルメディアの物理接続を介して、他のシステムにリポジトリとして接続する必要があります。
HTTPサーバーを使用して接続するには、Apacheをインストールできます。
sudo aptitude install apache2
次に、リポジトリのあるフォルダーを指すシンボリックリンク/ var / www / ubuntuを作成します。
sudo ln -s /media/data/ubuntu-repo/mirror/archive.ubuntu.com/ubuntu /var/www/ubuntu
その後、このコンピューターをアプリケーションのソースとしてネットワーク上の他の全員に接続し、そのようなリポジトリを指定することができます。
deb http://__/ubuntu maverick main restricted
あなたの場合、 mainとlimited以外のコンポーネントがあるかもしれません。
リポジトリのコピーをローカルリポジトリとして使用する場合は、メディアをリポジトリに接続して目的のコンピューターに接続し、このコンピューターのアプリケーションソースのリストに次の行を追加する必要があります。
deb file:/media/data/ubuntu-repo/mirror/archive.ubuntu.com/ubuntu maverick main restricted
もちろん、あなたの場合、パスは異なるかもしれません。
最後に、多くの場合、リポジトリ全体のコピーを作成する必要はまったくなく、むしろapt-cacheやapt-moveなどを使用することに注意してください。
記事の実際のバージョン
この記事の最新の最新バージョンは 、Ubuntuの公式ロシア語版 Wikiリソースドキュメントにあります。 そこで、レイアウトされた参照資料やトレーニング資料を自由に改善および補足したり、独自の資料を追加したりできます。 他のUbuntuユーザーに伝えたいことがあれば、膨大なリクエスト-help.ubuntu.ruの対応する記事を書いたり編集したりしてください 。 わずかな改善や追加があったとしても、何千人もの人々を支援し、そのうちの1人が有用で興味深い何かを説明します。