首页 帮助中心 美国云服务器 CentOS 7下搭建配置SVN服务器
CentOS 7下搭建配置SVN服务器
时间 : 2023-03-31 10:18:47 编辑 : 华纳云 阅读量 : 292

1. 安装

CentOS通过yum安装subversion。

$ sudo yum install subversion

 subversion安装在/bin目录:

$ which svnserve /bin/svnserve

检查一下subversion是否安装成功。

2. 建立版本库

subversion默认以/var/svn作为数据根目录,可以通过/etc/sysconfig/svnserve修改这个默认位置。

我们修改/etc/sysconfig/svnserver将默认目录指定到/opt/svn。

$ cat /etc/sysconfig/svnserve OPTIONS="-r /opt/svn"

3. 配置

编辑用户文件passwd,新增两个用户:admin和guest。

$ cat /opt/svn/spring-hello-world/conf/passwd
[users]
admin = admin
guest = guest

编辑权限文件authz,用户admin设置可读写权限,guest设置只读权限。

$ cat /opt/svn/spring-hello-world/conf/authz
[/]
admin = rw
guest = r

编辑svnserve.conf:

$ cat /opt/svn/spring-hello-world/conf/svnserve.conf
[general]

anon-access = none #控制非鉴权用户访问版本库的权限

auth-access = write #控制鉴权用户访问版本库的权限

password-db = passwd #指定用户名口令文件名

authz-db = authz #指定权限配置文件名

realm = spring-hello-world #指定版本库的认证域,即在登录时提示的认证域名称

 4. SVN服务

启动SVN服务。

$ sudo systemctl start svnserve.service

检查服务是否启动成功。

$ ps aux | grep svn
root 16349 0.0 0.1 162180 900 ? Ss 15:01 0:00 /usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid -r /opt/svn

通过netstat可以看到SVN打开了3690端口。

$ sudo netstat -tnlp
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 16349/svnserve

通过netstat可以看到SVN打开了3690端口。

$ sudo netstat -tnlp
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 16349/svnserve

设置成开机启动。

$ sudo systemctl enable svnserve.service

 5. 客户端测试

客户端可以通过TortoriseSVN测试。

这时候可能会防火墙问题。如果是防火墙问题,会提示无法连接。

客户端用telnet无法连接。

C:\Temp>telnet 192.168.12.59 360

用systemctl检查服务器的防火墙配置:

$ firewall-cmd --list-all
public (default, active)
interfaces: eno16777736 eno33554984
sources:
services: dhcpv6-client ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:

可以看到,没有telnet服务和3690端口。增加telnet服务器和3690端口:

$ sudo firewall-cmd --permanent --add-service=telnet
$ sudo firewall-cmd --permanent --add-port=3690/tcp
$ sudo firewall-cmd --reload

客户端再用telnet,应该就可以了。

华纳云 推荐文章
Linux如何把CentOS7升级为CentOS8 CentOS 7云主机中如何自制ISO镜像文件 CentOS 7环境下使用Nginx托管.Net Core应用程序 CentOS 7.x下配置DNS服务器基本操作 CentOS 7下如何使用Docker运行.Net Core CentOS7搭建Docker私有库和如何删除库内系统镜像 CentOS 7.9 分区中挂载硬盘LVM操作实例 CentOS 7.x安装配置openGauss数据库常见方法 在centos 7系统中如何扩展根目录? centos 7 找不到安装源怎么解决?
活动
客服咨询
7*24小时技术支持
技术支持
渠道支持