CentOS 7安装SVN

环境

CentOS 7.2

安装SVN

su模式下运行

yum install subversion

检查svn版本

svnserve --version
OR
svn --version

创建svn的数据存储路径

mkdir -p /var/svn

参数P代表parents,表示递归创建目录。

创建版本库

创建一个名为"akiosvn"的版本库

svnadmin create /var/svn/akiosvn

执行后,会在/var/svn/akiosvn 目录下生成多个文件或目录,进入conf目录,其中:

  1. svnserve.conf svn服务器配置
  2. authz 权限控制配置文件
  3. passwd 用户名口令文件

PS: 删除版本库

rm -rf /var/svn/akiosvn

配置svnserve.conf文件

对svnserve.conf进行如下修改

[general]
##匿名访问的权限,可选值:read、write、none,默认read,因为是内部SVN,所以设置为none
anon-access=none

##授权用户write权限
auth-access=write

##指定当前目录下的passwd文件用于保存账号信息
password-db=passwd

##指定当前目录下的passwd文件用于保存权限信息
authz-db=authz

##指定版本库的认证域,即在登录时提示的认证域名称,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm=akiosvn

配置用户账号密码

修改passwd文件

[users]
akio1=akio1pwd      #用户名=密码
akio2=akio2pwd

配置用户权限

对authz进行如下配置

[groups]            
## 用户组 = 用户名1,用户名2(逗号分割)
admin=akio1,akio2
user=user1,user2
test=test1,test2

[akiosvn:/]         #表示根目录(/var/svn/akiosvn),akiosvn: 对应前面配置的realm=akiosvn
@admin = rw         #表示admin组对根目录有读写权限:r为读,w为写
@user = r           #表示user组对根目录有只读权限
*=                  #非用户组权限,这里设置除了用户组都对版本库没有任何权限

[akiosvn:/test]     #表示test目录(/var/svn/akiosvn/test)
@test = rw          #表示test组对test目录有读写权限

启动和停止SVN版本库

启动

svnserve -dr /var/svn
  1. 参数d代表守护进程。
  2. 参数r代表SVN数据根目录

停止

killall svnserve

查看是否已启动/停止SVN

 ps -aux | grep svn

当使用SVN服务时,必须先kill掉SVN进程,再使用下文中的systemctl start svnserve启动SVN服务

防火墙设置

检查SVN端口,默认端口:3690

netstat -ln | grep3690

添加端口

firewall-cmd --permanet --add-port=3690/tcp 
firewall-cmd --reload

注意: 当使用某些云主机时,不但要打开防火墙相应端口,还要设置云主机的“安全组”,添加端口信息,才可以访问。当防火墙关闭,仍不能访问时,可考虑此情况。

SVN服务

设置SVN开机自启动

systemctl enable svnserve.service

启动/停止SVN服务

systemctl start svnserve.service
systemctl stop svnserve.service

修改SVN端口

  1. 启动时添加参数
svnserve -dr /var/svn --listen-port=13690
  1. 使用SVN服务时,修改文件:/usr/lib/systemd/system/svnserve.service
[Unit]
Description=Subversion protocol daemon
After=syslog.target network.target

[Service]
Type=forking
EnvironmentFile=/etc/sysconfig/svnserve

##修改这里,加上监听端口 --listen-port=13690
ExecStart=/usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid --listen-port=13690 $OPTIONS

[Install]
WantedBy=multi-user.target

客户端访问

访问路径(默认端口)

svn://123.456.789.0/akiosvn

访问路径(自定义端口)

svn://123.456.789.0:13690/akiosvn
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值