ubuntu安装svn服务器

  很多朋友初次接触Subversion时不是很理解subversion和apache的关系。
  subversion服务器是不需要apache的,但是可以使用apache,视具体情况来选择。
  1、如果只要通过file://或svn://来访问,则不需要apache,只安装svn即可,使用svnserve来作为服务。
  2、如果你要建立一个可以通过http://或https://来访问的版本库服务器,则你需要使用apache。

  首先准备好相关的安装包
  我没有使用的相关包:
  Apr : apr-1.5.1.tar.gz 和 apr-util-1.5.4.tar.gz (下载地址 https://apr.apache.org/download.cgi)
  Apache : httpd-2.2.25.tar.gz
  Sqlite: sqlite-autoconf-3080002.tar.gz
  我使用的相关包:
  Zlib: zlib-1.2.8.tar.gz(原先装nginx装过一个版本,已经存在所以不确定是否必须)
  Subversion: subversion-1.6.5和 subversion-deps-1.6.5.tar.gz
 
下载地址:
wget http://subversion.tigris.org/downloads/subversion-1.6.5.tar.gz
wget http://subversion.tigris.org/downloads/subversion-deps-1.6.5.tar.gz
前者是svn1.6.5 的源文件,后者是编译时可能需要用到的包

上传到home目录,解压
tar -zxvf subversion-1.6.5.tar.gz
tar -zxvf subversion-deps-1.6.5.tar.gz

解压两个文件会在同一个文件夹subversion-1.6.5

tar -zvxf apr-1.5.1.tar.gz
cd /home/subversion-1.6.5
./configure --prefix=/usr/local/svn


出现下面错误:找不到opensslv.h
checking for openssl/opensslv.h... no
configure: error: We require OpenSSL; try --with-openssl
configure failed for serf
解决:更新下源-安装
sudo apt-get update
sudo apt-get install libssl-dev
sudo apt-get install openssl
find / -name opensslv.h

会显示/usr/include/openssl/opensslv.h

./configure --prefix=/usr/local/svn --without-berkeley-db --with-openssl=/usr/include/openssl
如果最后出现WARNING,我们直接忽略即可。因为不使用BDB存储。

make
make install

安装完成,查看版本
/usr/local/svn/bin/svnserve --version


配置svn----------------------------
创建版本库:假设在linux根目录下,命名为svnroot
cd /usr/local/svn/bin
./svnadmin create /svnroot


添加用户passwd(新增用户第一步)

cd /svnroot/conf/
vi passwd
[users]
admin=123


修改策略authz(新增用户第二步)

vi authz
[groups]
[/]
admin= rw


修改svnserve.conf文件,让用户和策略配置升效
vi /svnroot/conf/svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = /svnroot/conf/passwd
authz-db = /svnroot/conf/authz



启动服务器
cd /usr/local/svn/bin
./svnserve -d -r /svnroot/


停止
ps -aux|grep svnserve
kill -9 ID号





猜你喜欢

转载自rc123.iteye.com/blog/2156021