subversion 1.14 编译安装
1.拉取安装包
https://mirrors.aliyun.com/apache/?spm=a2c6h.13651104.0.0.38b389dbTPsO23
apr-1.7.0.tar.gz
apr-util-1.6.1.tar.gz
subversion-1.14.0.tar.gz
2.下载依赖
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
yum install -y expat-devel
yum install -y gcc g++
3.安装apr
[root@svn ~]# cd apr-1.7.0
[root@svn apr-1.7.0]# ./configure --prefix=/usr/local/apr
注意:!!!!
编译过程中遇到 rm: cannot remove `libtoolT': No such file or directory
解决办法:
编辑configure文件找到$RM 然后加入一个 -f 解决!
再次编译
[root@svn apr-1.7.0]# ./configure --prefix=/usr/local/apr
[root@svn apr-1.7.0]# make
[root@svn apr-1.7.0]# make install
4.安装apr-util
[root@svn ~]# tar -zxvf apr-util-1.6.1.tar.gz
[root@svn ~]# cd apr-util-1.6.1
[root@svn apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[root@svn apr-util-1.6.1]# make
[root@svn apr-util-1.6.1]# make install
5.安装subversion
[root@svn ~]# tar -zxvf subversion-1.14.0.tar.gz
[root@svn ~]# cd subversion-1.14.0
[root@svn subversion-1.14.0]# ./configure --prefix=/usr/local/subversion --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-lz4=internal --with-utf8proc=internal
安装时报错:
An appropriate version of sqlite could not be found. We recommmend
3.8.11.1, but require at least 3.8.2.
Please either install a newer sqlite on this system
or
get the sqlite 3.8.11.1 amalgamation from:
https://www.sqlite.org/2015/sqlite-amalgamation-3081101.zip
unpack the archive using unzip and rename the resulting
directory to:
/root/subversion-1.14.0/sqlite-amalgamation
configure: error: Subversion requires SQLite
解决方法:
[root@svn subversion-1.14.0]# yum install unzip -y
[root@svn subversion-1.14.0]# wget https://www.sqlite.org/2015/sqlite-amalgamation-3081101.zip
[root@svn subversion-1.14.0]# unzip sqlite-amalgamation-3081101.zip
[root@svn subversion-1.14.0]# mv sqlite-amalgamation-3081101 sqlite-amalgamation
再次编译
[root@svn subversion-1.14.0]# ./configure --prefix=/usr/local/subversion --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-lz4=internal --with-utf8proc=internal
[root@svn subversion-1.14.0]# make
[root@svn subversion-1.14.0]# make install
6.添加环境变量
[root@svn ~]# echo "export PATH=/usr/local/subversion/bin/:$PATH" >> /etc/profile
[root@svn ~]# source /etc/profile
7.验证安装
[root@svn ~]# svn --version
[root@svn ~]# svnserve --version
8.创建版本库
[root@localhost ~]# mkdir /var/svn //先建立目录
[root@localhost ~]# svnadim create /var/svn/project //创建版本库
[root@localhost ~]# cd /var/svn/project/ //切换目录
//会看到自动生成的版本库文件
conf db format hooks locks README.txt
9.创建用户及用户组
[root@localhost ~]# cd /var/svn/project/conf/
[root@localhost conf]# vim authz
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
lsgogroup = lsgoweb1,lsgoweb2
# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r
[project:/]
@lsgogroup = rw
10.配置用户名命令文件
[root@localhost conf]# vim passwd
[users]
# harry = harryssecret
# sally = sallyssecret
lsgoweb1 = lsgoweb1
lsgoweb2 = lsgoweb2
11.配置svn服务综合配置文件svnserve.conf
[root@localhost conf]# vim svnserve.conf
anon-access = none //匿名用户访问权限:无
auth-access = write //普通用户访问权限:读、写
password-db = passwd //密码文件
authz-db = authz //权限配置文件
realm = /var/svn/project //版本库所在1
12.启动svn服务
[root@localhost conf]# svnserve -d -r /var/svn
13.验证服务是否启动
[root@localhost conf]# ps aux | grep svn
root 69287 0.0 0.0 146716 792 ? Ss 14:24 0:00 svnserve -d -r /var/svn
root 69330 0.0 0.0 112824 980 pts/0 R+ 14:39 0:00 grep --color=auto svn
14.停止服务
[root@localhost conf]# kill -9 629287
15.关闭防火墙
firewall-cmd --add-port=3690/tcp --permanent
firewall-cmd --reload