Linux 源码安装svn服务

 svn要求使用最新稳定版本

svn下载地址:

https://mirrors.aliyun.com/apache/subversion/subversion-1.14.2.tar.gz

依赖 下载地址

apr:https://mirrors.aliyun.com/apache/apr/apr-1.7.0.tar.gz

apr-util:https://mirrors.aliyun.com/apache/apr/apr-util-1.6.1.tar.gz

zlib:http://www.zlib.net/zlib-1.2.12.tar.gz

sqlite-autoconf:https://www.sqlite.org/2020/sqlite-autoconf-3320000.tar.gz

expat:https://github.com/libexpat/libexpat/releases

 

以上安装包,上传到/root/svn下解压

 

注意:

/root/svn 因为是源码安装编译需要指定路径,换个路径,下面的命令也要记得改!

编写需要用到C,要记得安装gcc和gcc-c++:yum install –y gcc gcc-c++

 

 

安装步骤

1.     安装apr

#cd apr-1.7.0

# vi configure

 

 

 找到RM='$RM'修改为RM='$RM -f'(该操作用来解决报错:cannot remove 'libtoolT':No such file or directory)

编译

# ./configure prefix=/root/svn/apr-1.7.0

# make & make install

2.     安装expat

# cd /root/svn/

#cd expat-2.4.8

编译

# ./configure  

# make & make install

3. 安装apr-util

# cd /root/svn/

#cd apr-util-1.6.1

编译

# ./configure prefix=/root/svn/apr-util-1.6.1 --with-apr=/usr/local/apr

# make & make install

4. 安装zlib

# cd /root/svn/

#cd zlib-1.2.12

编译

# ./configure

# make & make install

 

5.     sqlite-autoconf

将sqlite-autoconf-3320000改名为sqlite-amalgamation并移动到subversion-1.14.2文件夹下

 

#cd /root/svn

#cd subversion-1.14.2

# cp -r ../sqlite-autoconf-3320000 sqlite-amalgamation

 

6.     安装subversion

编译

#./configure prefix=/root/svn/subversion-1.14.2 --with-apr=/root/svn/apr-1.7.0 --with-apr-util=/root/svn/apr-util-1.6.1 --with-zlib=/root/svn/zlib-1.2.11 --with-lz4=internal --with-utf8proc=internal

# make & make install

7.     配置SVN仓库

收拾一下/root/svn,将安装包移走,只留解压后的安装包路径

 

创建库目录

#cd /root/svn

# mkdir -p myproject

添加/创建 配置文件

# svnadmin create /root/svn/myproject

上面一句不行,用下面一句

# /root/svn/subversion-1.14.2/bin/svnadmin create /root/svn/myproject

进入配置文件所在目录

#cd /root/svn/myproject/conf

 

修改/添加 配置文件subversion.conf

#vi subversion.conf

添加下面信息

[general]

#使非授权用户无法访问

anon-access = none

#使授权用户有写权限

auth-access = write

#指明密码文件路径

password-db = passwd

#访问控制文件

authz-db =authz          

#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字

realm = repos

 

 

 修改passwd文件用于创建用户

# vi passwd

添加用户:用户名1 = 密码1

 

修改authz文件用于管理用户权限            

#vi authz

添加下面信息(myproject、admin和user1 就是上面添加的)

格式:

[库名:目录]

用户名1 = 权限

用户名2 = 权限

例如:

[myproject:/]

admin = rw

user1 =r

修改svnserve.conf,取消下面的屏蔽

 

 

8.     启动服务

#/root/svn/subversion-1.14.2/bin/svnserve -d --listen-port 3690  -r /root/svn

 

9.     开启防火墙端口

#firewall-cmd --zone=public --add-port=3690/tcp --permanent

 

10.  装上客户端就可以访问svn服务

在同网段下的客户机上安装svn客户端远程连接svn服务器

地址为:svn://svn服务器IP地址/myproject

11、验证

导入了一个文件:1.xlsx

 

服务器端查看到有文件添加,上传文件是通过数据处理后存储在db/revs里面。但是提交一次svn会自动生成一个版本文件,这个文件是经过处理的,同样也看不到原文件。

 

posted @ 2022-05-09 08:56  leihongnu  阅读(653)  评论(2编辑  收藏  举报