CentOS 5.8(x86_64)にKanonをインストール

CentOS 5.8(x86_64)にKanonをインストールするのに少し苦労したのでメモ。
試行錯誤の結果なので、ちょっと間違いや勘違いがあるかもです。


数ヶ月前にこちらのサイト様を参考にインストールしてうまくいったので、その手順で実施。……したら、EPELリポジトリのURLとか変わってまして上手くインストール出来ず。

Linux に一撃で Trac をインストールする

WEBの情報を検索すると、下記のサイト様を発見。EPELリポジトリのリンク切れ……あ、これだ。
感謝をしつつ、同じ現象がでる問題2と問題3の手順を参考にして再度インストールを試みます。

kanon のインストールメモ - 桜、抹茶、白、日記

インストールはうまくいってる様子……が、apacheの起動に失敗。

httpd を起動中: Syntax error on line 3 of /etc/httpd/conf.d/vcs.conf:
Unknown DAV provider: svn

これは……おそらく、mod_dav_svnが入っていなくて出たんだと思う。
yumでさくっとインストールします。
※でもこれは間違ってたため、このバージョンは下記にもありますが削除しました


apacheが起動するようになる。よし!完了と思って、TracのSampleProjectにアクセスするとリポジトリが参照できず以下のメッセージが表示されました。

警告: リポジトリ "(default)" との同期ができません (サポートされていないバージョン管理システム "svn": "No module named svn")。
詳細は Trac のログを参照してください

おそらく、該当部分のログ。

Trac Trac[svn_fs] INFO: Failed to load Subversion bindings Traceback(most recent call last):
File "build/bdist.linux-x86_64/egg/trac/versioncontrol/svn_fs.py", line 266, in __init__ _import_svn()
File "build/bdist.linux-x86_64/egg/trac/versioncontrol/svn_fs.py", line 68, in _import_svn from svn import fs, repos, core, delta
ImportError: No module named svn

エラーメッセージを元に色々と検索したのですが、良くわからなかった為、上記サイト様の手順5を試しにやってみました。

yumCentOSのupdatesリポジトリからインストールしたsubversion.x86_64 1.6.11-10.el5_8 と mod_dav_svn.x86_64 1.6.11-10.el5_8 をアンインストール。

kanonリポジトリにあるi386版とx86_64版のsubversionとmod_dav_svnパッケージの 1.6.15-1.el5 をwgetでダウンロード後にインストールしました。
※下記にありますが、私の環境ではi386版はインストールするとうまく動作しない

早速、Tracアクセスしてみると上記エラーが解消して、リポジトリが正しく表示されるようになりました!


で、作業完了のはずだったのですが、既存のプロジェクトをコピーしてきて、trac-adminコマンドからリポジトリのリシンクを実施するとエラーが発生。

# /opt/kanon/bin/trac-admin /var/opt/kanon/trac/プロジェクト名 repository resync "(default)"
TracError: サポートされていないバージョン管理システム "svn": "/usr/lib/python2.6/site-packages/libsvn/_fs.so: wrong ELF class: ELFCLASS32"

またも情報を検索するとうまく見えてないので、パスを設定して下さい、といった情報が。


ん〜、でも半年前はこんな事してないしなぁと悩む。よくよく考えると先ほど、i386版のsubversionとmod_dav_svnをインストールしているので、もしかしてこれが原因?と思い、i386版だけアンインストール。

rpm -e subversion-1.6.15-1.el5.i386.rpm mod_dav_svn-1.6.15-1.el5.i386.rpm

すると、リポジトリのリシンクも問題なく動作するようになりました!
いや、はまりました。力不足が大きな要因なんですけどね。


EPELのリンク切れを報告しようと思ったら、Bitbucketでは修正されていました。
確認不足で報告するところだった……。