首页 > 代码库 > centos svn搭建调试分配权限

centos svn搭建调试分配权限

svn,git开发很喜欢的工具,版本管控很方便,公司有一需求内网安装svn服务器,市场部,运营,商务,平台,行政,开发各自只能看到自己部门文件,还好svn客户端是用windows也蛮简单,开搭;

1. 安装:yum install subversion

   判断是否安装成功

    subversion -v

    svnserve, version 1.6.11 (r934486)

   说明安装成功。

  有了SVN软件后还需要建立SVN库。

    mkdir /home/svn/repos

    svnadmin create /home/svn/repos

执行上面的命令后,自动在repos下建立多个文件, 分别是conf, db,format,hooks, locks, README.txt。

2.配置调试

进入上面生成的文件夹conf下,进行配置,   有以下几个文件authz, passwd, svnserve.conf

其中authz 是权限控制,可以设置哪些用户可以访问哪些目录,   passwd是设置用户和密码的,    svnserve是设置svn相关的操作。

cd /home/svn/repos/svn/conf 并且 vim passwd(添加用户):

[users]

# harry = harryssecret

# sally = sallyssecret

ff=f@1111

cc=cc1111

zz=1121@1

zw=111111

li=aaa@111

ou=111@123

tt=tt@123

wt=ww111123

ee=11111123

再设置权限authz

[/]

hello= rw

意思是hello用户对所有的目录有读写权限,当然也可以限定。

如果是自己用,就直接是读写吧。

[groups]

all=cc,ff,zz,zw,li,ou,tt,ee,wt  所有的人 以下是各个部门的人分配,原文件随便修改的;

ot=ff,zw                 看到所有文件;                   

Op=ee,zw                 以下部门

Commerce=cc,zw

dev=ou,tt

market=ff,li

platform=ou

xingzheng=wt

admin=admin              


# harry_and_sally = harry,sally

# harry_sally_and_joe = harry,sally,&joe

[/]

@all=r             跟目录貌似都要看到

@admin=rw

[/开发]

@ot=rw

@dev=rw

*=

[/运营]

@Op=rw

@ot=rw

*=

[/市场]

@market=rw

@ot=rw

*=

[/平台]

@ot=rw

@platform=rw

*=

[/商务]

@ot=rw

@Commerce=rw

*=

[/tools]

@all=rw

[/share]

@all=rw

[/行政]

@xingzheng=rw

@ot=rw

*=

# [/foo/bar]

# harry = rw

# &joe = r

# * =

# [repository:/baz/fuz]

# @harry_and_sally = rw

# * = r


最后设定snvserv.conf

anon-access = none # 使非授权用户无法访问

auth-access = write # 使授权用户有写权限

password-db = password

authz-db = authz   # 访问控制文件

realm = /home/svn/repos # 认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字。

采用默认配置. 以上语句都必须顶格写, 左侧不能留空格, 否则会出错.

3.设置svn开机自启动

    编辑文件 /etc/sysconfig/rc.local

    添加一行   svnserve -d -r /home/svn/repositories

或者使用系统已有的svnserve 服务/etc/init.d/svnserve 文件,通过配置/etc/sysconfig/svnserve

#!/bin/bash

OPTIONS=" -r /home/svn/repos"


好了,通过以上配置,你的svn就可以了。

启动svn: svnserve -d -r /home/svn/repos

关闭svn服务: kill svnserve                                 

如果已经有svn在运行,可以换一个端口运行

svnserve -d -r /home/svn/repos --listen-port 3391

这样同一台服务器可以运行多个svnserver

至此svn服务器配置完毕,以后进入svn客户端创建开发,运营等文件夹目录,就可以测试了;

技术分享

PS:如果svn版本没日志,那么只需要修改svnserver.conf文件里面:

anon-access = read -->修改为 anon-access = none。修改过后测试没有问题,log可以正常显示。


本文出自 “岁月无声” 博客,请务必保留此出处http://xpu2001.blog.51cto.com/890980/1917656

centos svn搭建调试分配权限