CentOS 7 搭建 Svn 服务器
CentOS 7 搭建 Svn 服务器
吃一堑消化不良 发表于1年前
CentOS 7 搭建 Svn 服务器
  • 发表于 1年前
  • 阅读 231
  • 收藏 4
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

1、安装SVN服务端

yum install subversion

2、创建版本库

svnadmin create /home/myrepos    #这里的文件目录自己随便设置  

3、配置svnserve

上述版本库/home/myrepos建立后在文件夹下会生成hooks、locks、format、conf四个文件夹

目录用途说明:

hooks目录:放置hook脚本文件的目录

locks目录:用来放置subversion的db锁文件和db_logs锁文件的目录,用来追踪存取文件库的客户端

format文件:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号

conf目录:是这个仓库的配置文件(仓库的用户访问账号、权限等),包含3个文件:authz、passwd、svnserve.conf

    文件用途说明:

    authz文件:用户权限配置文件。

    passwd:用户名密码配置文件。

    svnserve.conf:Svn主配置文件。

        3.1、svnserve.conf修改以下几个部分:

anon-access = none    #不允许匿名访问
auth-access = write   #允许写入
password-db = passwd  #指向验证用户名密码的数据文件 passwd
authz-db = authz      #指向验证用户的权限配置文件 authz

        3.2、passwd修改以下内容:

[users]
chen = 123456  #用户名 = 密码, 等号表示关联关系

        3.3、authz修改以下几个部分:

[groups]
admin = chen  #群组 admin 包含账号chen

[/]
@admin = rw   #群组 admin 有读写权限
* =           #以上没有定义的用户都没有任何权限

格式说明:

版本库目录格式: 

[<版本库>:/项目/目录] 

@<用户组名> = <权限> 

<用户名> = <权限>

/ 表示对根目录(即/svn/project目录)下的所有子目录范围设置权限;

[/abc] 表示对资料库中abc项目设置权限;

创建一个admin组,组成员只包括chen

admin组对目录有读写权限;

*=表示除了上面设置的权限用户组以外,其他所有用户都设置空权限,空权限表示禁止访问本目录,这很重要一定要加上。

注意:对权限配置文件的修改立即生效,不必重启svn。

4、开启端口

CentOS 7 默认没有使用iptables,所以通过编辑iptables的配置文件来开启80端口是不可以的

CentOS 7 采用了 firewalld 防火墙,Svn默认使用3690端口,如要查询端口是否开启,使用以下命令:

firewall-cmd --query-port=3690/tcp --permanent

如果端口未开,使用下面的命令开启端口:

firewall-cmd --add-port=3690/tcp --permanent

开启端口后,可以重新加载防火墙:

firewall-cmd --reload

5、启动svnserve:

svnserve -d -r /home/myrepos/

 

共有 人打赏支持
粉丝 27
博文 187
码字总数 112458
×
吃一堑消化不良
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: