apt-cacher-ng
インストール
apt のパッケージをキャッシュしておくサーバ apt-cacher-ng を使う。 Ubuntu 8.10にインストールした。
aptitude install apt-cacher-ng
apt の設定
apt-cacher-ng は apt のリポジトリのように動くこともできるのだが、 単にプロキシとして使う。
/etc/apt/apt.conf.d/02proxy を作り、以下のようにする。
Acquire::http::Proxy "http://localhost:3142";
Acquire::ftp::Proxy "ftp://localhost:3142";
他のマシンから使うには、localhostの部分をIPアドレスに変える。
インポート
キャッシュからインポート
最初、すでにインストールされているパッケージを インポートしようとしたがインデックスがないとか言われてうまくいかなかった。 おそらく、一度、aptitude update(apt-get update)をしておかなければならないのだろう。 まず、/var/cache/apt-cacher-ng/_import にキャッシュのシンボリックを張る。
aptitude update
ln -s /var/cache/apt /var/cache/apt-cacher-ng/_import
そして、http://localhost:3142/ にアクセスし、ここから Importする。 最後に、不要になった /var/cache/apt-cacher-ng/_import を消しておく。
rm /var/cache/apt-cacher-ng/_import
CD や DVD イメージからインポート
同じように /var/cache/apt-cacher-ng/_import にシンボリックリンクを張れば良いのだが イメージをマウントする必要がある。 たとえば次のようにして /mnt/tmp にマウントしてからシンボリックリンクを張る。
mount -o loop ubuntu-11.04-alternate-amd64.iso /mnt/tmp
ln -s /mnt/tmp /var/cache/apt-cacher-ng/_import
として、http://localhost:3142/ にアクセスしてインポートする。 終わったら、シンボリックリンクを削除しておく。
umount /mnt/tmp
rm /var/cache/apt-cacher-ng/_import
不調
サーバの再起動
長く起動していると不調になって apt-cacher-ng が反応しなくなる。 解消方法はよくわからないので、apt-cacher-ng を再起動するしかない。 Ubuntu 10.04 では
sudo service apt-cacher-ng restart
とする。
キャッシュがおかしい
キャッシュがおかしい場合は
find /var/cache/apt-cacher-ng -type f | grep パッケージ名
などとしてファイルを探して
find /var/cache/apt-cacher-ng -type f | grep パッケージ名 | xargs rm
のようにして一度、該当のキャッシュを削除する。