036 インターネットに繋がらないマシン(CentOS)へのSubversion+Tracのインストール

お正月気分も抜けて、仕事をされている方はすっかり本調子でしょうか?
皆さん、こんにちは。id:EC-OneのAkiです。

最近、セキュリティ意識の向上により、さまざまな企業で「インターネットにつながらない環境」を多くみかけます。
CentOSなどのLinux系OSでは、何かをインストールする際に「ネットワークからダウンロードしてインストール」を行うコマンドを使うのがラク&一般的なのですが、いざネットにつながらない環境となると...?
今回はそんな「インターネットにつながらない環境」でのSubversionおよびTracのインストール作業についてお話しします。

インターネットにつながっているならば

インターネットに繋がっているならば、インストールされたばかりのCentOS5.4に、Subversion + Trac(日本語版) をインストールするのは容易いことです。(ここではApacheは既にインストール済であるものとします)

以下、対象マシンのアーキテクチャx86_64の場合です。

まず、

rpm -Uhv http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS//rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm

として、yumリポジトリを補強してから(そうしないと 古いバージョンのSubversionが入ってしまいます)

yum check-update
yum update

として、念の為、アップデートできるものは全てアップデートした後に、

yum install mod_dav_svn
yum install trac
yum remove trac
wget http://www.i-act.co.jp/project/products/downloads/Trac-0.11.5.ja1.zip
unzip Trac-0.11.5.ja1.zip
cd Trac-0.11.5.ja1
python setup.py install

とすれば終了です。あー、簡単!

ではインターネットにつながっていないなら?

しかし、インターネットに繋がっていない場合、インストールされたばかりのCentOS5.4に、Subversion + Trac(日本語版) をインストールするのは少々面倒になります。
依存関係やら何やら、といったややこしい事担当の yum というコマンドは、インターネットに繋がっていなければ役に立ちません。
yum(ヤム)が使えないだけに、やむなし!」と言ったってどうにもなりはしません。

その場合の手順ですが(x86_64の場合)、予め、自分のローカルPC(もちろんインターネットに繋がっている)に、ネットから、

neon-0.28.4-1.x86_64.rpm
sqlite-3.5.9-2.x86_64.rpm
subversion-1.6.6-1.rhel5.x86_64.rpm
mod_dav_svn-1.6.6-1.rhel5.x86_64.rpm
subversion-python-1.6.6-1.rhel5.x86_64.rpm
Trac-0.11.5.ja1.zip
setuptools-0.6c11-py2.4.egg
Genshi-0.5.1-py2.4-linux-x86_64.egg
mod_python-3.2.8-3.1.x86_64.rpm

たちを取得しておきます。

そしてこれらを、対象のインターネットに繋がらない CentOS 5.4 へ SFTPなどでアップロード。

その後、インターネットに繋がらない CentOS 5.4 上の適当なフォルダで、

rpm -ivh neon-0.28.4-1.x86_64.rpm
rpm -Uvh sqlite-3.5.9-2.x86_64.rpm
rpm -ivh subversion-1.6.6-1.rhel5.x86_64.rpm
rpm -ivh mod_dav_svn-1.6.6-1.rhel5.x86_64.rpm
rpm -ivh subversion-python-1.6.6-1.rhel5.x86_64.rpm
sh setuptools-0.6c11-py2.4.egg
easy_install Genshi-0.5.1-py2.4-linux-x86_64.egg
rpm -ivh mod_python-3.2.8-3.1.x86_64.rpm
unzip Trac-0.11.5.ja1.zip
cd Trac-0.11.5.ja1
python setup.py install

としてやれば、Subversionと日本語版Tracのインストールは完了です。

インストールが完了した後は、Projectの作成やら、認証関係の設定やら、tracのユーザ管理用のプラグインの追加やらが、"インターネットに繋がらない状態で"あるのですが、今回はその辺りの煩雑な設定は割愛します。

ちなみに、mod_python-3.2.8-3.1.x86_64.rpm については、捜すのに苦労しました。(結局 http://rpm.pbone.net/ で、mod_python.so と入力して SEARCH ボタンを押下)
本家のApacheのサイトにはC言語のソースしかなく、それをコンパイルするためのgccコマンドも対象のマシンにはなかったりしますから...

CentOSへのモジュールのインストールにyumが使えないというのは、高校生がせっかく習った判別式を使わずに二次方程式を解けと言われるのと同じ位致命的なことだ(?)、と実感したのでした。


ナレッジセンターでは「インターネットにつながらない環境で○○がしたい」などの相談も受け付けます。
トライアルで質問を無料で受け付けるキャンペーンも実施しておりますので、お気軽にお問い合わせ下さい!







JavaRuby及び周辺のソフトウェアを用いた開発に関して、企業があらゆる悩みごとを相談できるのが、ナレッジセンターの「レスキューサービス」です。
どんな相談でも親身に受け付けますので、レスキューサービスってなに?もっと知りたい!と思った方はお気軽に問い合わせ下さい。
問い合わせ画像リンク