CPANのMirrorを作成

ほとんどというか全てぱくりですが、CPAN::Miniを使ってLocalにMirrorを作成することができます。
以前にもこのModuleが気になったことがあったのですが流してました。

うちの環境は非常に低速回線(100KB/s程度)なのでこういうのは非常に助かります。
常時立ち上がっている鯖マシンがあるので毎日cronでMirrorをUpdateしています。
tcsh使ってるので下記のように書いたファイルを用意してcrontab -eしています。
Mirrorとして使うServerは、CPAN Mirrors - metacpan.org から探すことが可能です。

#!/bin/tcsh -f
/usr/bin/minicpan -l /path_to/CPAN/ -r http://ftp.dti.ad.jp/pub/lang/CPAN/ >>& xxx.log

んでもって、Apache1.3で下記のように設定してあげるとLan内のマシンからも参照可能となります。

Alias /CPAN /path_to/CPAN
<Directory /path_to/CPAN/>
    Options Indexes
    AllowOverride None
</Directory>

最後にCPAN::Miniで作成したリポジトリを使うようにCPANの設定を編集します。
良く分からない時は、perl -MCPAN -e mkmyconfigしてみると良いかと。
ちなみに、下記のように完全にLocalのみのリポジトリにすると外部への通信は発生しません。
通常は、urllistの先頭にLocalのリポジトリ、次以降に通常のリポジトリをいれるべきかと。

'urllist' => [q[http://server_machine/CPAN/]],

http://blog.bulknews.net/mt/archives/002069.html