您的位置:首页 > 运维架构 > Linux

Linux下svn服务器端安装及配置教程

2014-11-17 17:11 423 查看
第一步,安装svn服务器端

1、直接使用yum安装,命令及截图如下

[root@localhost ~]# yum install -y subversion



2、安装成功之后,可以查看svn的版本

[root@localhost ~]# svnserve --version




3、创建svn目录,可以按照个人习惯指定目录位置

[root@localhost ~]# mkdir /usr/local/svn


4、创建svn版本库testsvn,版本库名称可以自己取

[root@localhost ~]# svnadmin create /usr/local/svn/testsvn


第二步、配置SVN服务器端

创建版本库后,在目录下会生成3个配置文件:authz passwd svnserve.conf

svnserve.conf: svn服务配置文件。

passwd: 用户名口令文件。

authz: 权限配置文件。

1、打开svnserve.conf进行配置
anon-access: 控制非鉴权用户访问版本库的权限。

auth-access: 控制鉴权用户访问版本库的权限。

password-db: 指定用户名口令文件名。

authz-db:指定权限配置文件名,通过该文件可以实现以路径为基础的访问控制。

realm:指定版本库的认证域,即在登录时提示的认证域名称。若两个版本库的认证域相同,建议使用相同的用户名口令数据文件

我的配置如下:



2、配置passwd用户名密码

在[users]加上相应的用户名和密码即可,格式为:用户名=密码

我的配置如下:



3、配置authz权限

因为我是自己测试的,所以只需要简单配置一下,给自己的账户配置上读写权限即可,如下图



其实比较正规的配置方案,应该有不同角色的权限控制,在此贴出网上给出的一个例子供参考

[groups]
admin = john, kate
devteam1 = john, rachel, sally
devteam2 = kate, peter, mark
docs = bob, jane, mike
training = zak
#这里把不同用户放到不同的组里面,下面在设置目录访问权限的时候,用目录来操作就可以了。

# 为所有库指定默认访问规则
# 所有人可以读,管理员可以写,危险分子没有任何权限
#[/]对应此根目录
[/]
* = r
@admin = rw
dangerman =

# 允许开发人员可以完全访问他们的项目版本库
[proj1:/]
@devteam1 = rw
[proj2:/]
@devteam2 = rw
[bigproj:/]
@devteam1 = rw
@devteam2 = rw

# 文档编写人员对所有的docs目录有写权限
[/trunk/doc]
@docs = rw

# 培训人员可以完全访问培训版本库
[TrainingRepos:/]
@training = rw


第三步、启动和停止svn

1、启动

[root@localhost ~]# svnserve -d -r /usr/local/svn
-d表示后台运行

-r 指定根目录是 /usr/local/svn

[root@localhost ~]# ps -ef | grep svn
root 4566 1 0 11:07 ? 00:00:00 svnserve -d -r /var/www/svn_rshui

root 6667 3598 0 17:48 pts/1 00:00:00 grep svn

2、停止

ps -aux |grep svn
kill -9 进程pid
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: