CentOS6にSubversion1.7をインストールする方法

Subversion1.7はいろいろ新機能が盛り込まれていて便利になっているようです。
レポジトリの構造も大幅に改良されているようです。


本記事では、CentOS6.2にSubversion1.7をインストールする方法を紹介します。
途中mod_davモジュールの読み込みに失敗して2時間ほど試行錯誤しましたが、そこさえクリアすればうまく行きました。

wandisco.comからバイナリを取得

wandiscoという会社が各OS向けのバイナリを配布しています。
見てみたらちゃんとCentOS6用のものが用意されていました。
http://www.wandisco.com/subversion/download#centos6




メアドや氏名などを入力すると、ダウンロード用のURLをメールで教えてくれます。

事前にyum updateをしてから、インストーラをダウンロードします。
$ sudo yum -y upgrade
$ wget http://www.wandisco.com/get.php?f=YTo0OntzOjEwO.... -o installer.sh

インストーラを実行

インストーラはbashスクリプトなのでbashで実行します。
$ sudo bash  installer.sh

WANdisco Subversion Installer for CentOS 6
Please report bugs or feature suggestions to opensource@wandisco.com

Gathering some information about your system...
CentOS release 6.2 (Final)
CentOS version 6.x confirmed..
Checking your system arch
Installing for x86_64
Checking to see if you already have Subversion installed via rpm...
Subversion is already installed on the system.
Do you wish to replace the version of subversion currently installed with the WANdisco version?
This action will remove the previous version from your system
[y/n]
既存の古いsubversionを置き換えるか聞かれるので、迷わずYes。
y
Removing old packages...
Adding repository configuration to /etc/yum.repos.d/
 ------ Installing yum repo ------
Importing GPG key
 ------ Installing yum repo: Done ------

Installing Subversion 1.7.4

....

Complete!

Would you like to install apache and the apache SVN modules?
[y/n]
apache用のSVNモジュールも一緒にインストールするか聞かれるので、これもYES。
y
Installing apache and subversion modules
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.nsc.liu.se
 * epel: mirrors.coreix.net
 * extras: centosv4.centos.org
 * ius: mirror.rackspace.com
 * updates: centosk3.centos.org
Setting up Install Process
Package httpd-2.2.15-15.el6.centos.1.x86_64 already installed and latest version
Resolving Dependencies
--> Running transaction check
---> Package mod_dav_svn.x86_64 0:1.7.4-1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==================================================================================================================================================================================================================
 Package                                              Arch                                            Version                                             Repository                                         Size
==================================================================================================================================================================================================================
Installing:
 mod_dav_svn                                          x86_64                                          1.7.4-1                                             WANdisco                                           92 k

Transaction Summary
==================================================================================================================================================================================================================
Install       1 Package(s)

Total download size: 92 k
Installed size: 198 k
Downloading Packages:
mod_dav_svn-1.7.4-1.x86_64.rpm                                                                                                                                                             |  92 kB     00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : mod_dav_svn-1.7.4-1.x86_64                                                                                                                                                                     1/1
httpd を停止中: [  OK  ]
httpd を起動中: [  OK  ]

Installed:
  mod_dav_svn.x86_64 0:1.7.4-1

Complete!
Installation complete.
You can find the subversion configuration file for apache HTTPD at /etc/httpd/conf.d/subversion.conf
By default, the modules are commented out in subversion.conf.
To enable the modules, please edit subversion.conf and remove the # infront of the LoadModule lines.
You should then restart httpd (/etc/init.d/httpd restart)
インストール完了!

/etc/httpd/conf.d/subversion.conf のコメントアウトを外せば有効になると書いてあるので、そのようにしました。
Apacheを再起動すると、
$ sudo /etc/init.d/httpd restart
httpd を停止中:                                            [  OK  ]
httpd を起動中: httpd: Syntax error on line 221 of /etc/httpd/conf/httpd.conf: Syntax error on line 23 of /etc/httpd/conf.d/subversion.conf: Cannot load /etc/httpd/modules/mod_dav_svn.so into server: /etc/httpd
/modules/mod_dav_svn.so: undefined symbol: dav_register_provider
                                                           [失敗]
イテテ!
起動に失敗しました。
$ sudo find /  -name "*mod_dav_svn*"
/var/lib/yum/yumdb/m/aa3a030b580a1958a4ddd6fbb87afad8982eaa2b-mod_dav_svn-1.7.4-1-x86_64
/usr/lib64/httpd/modules/mod_dav_svn.so
モジュールは確かに存在するのに、おかしいですね。
2時間ほど格闘したあげく、dav_moduleが読み込まれていないのが原因であることに気づきました。

/etc/httpd/conf/httpd.conf を編集して、下記のコメントアウトを解除
#LoadModule dav_module modules/mod_dav.so
↓
LoadModule dav_module modules/mod_dav.so
Apacheを再起動
$ sudo /etc/init.d/httpd restart
httpd を停止中: [  OK  ]
httpd を起動中: [  OK  ]
できました!!
カテゴリ:

人気記事