LINUX svn安装步骤

1.安装

检查是否安装:

#rpm -qa subversion

安装:

#yum -y install subversion

卸载:

#yum remove subversion

检查是否安装成功:

#svnserve --version

2.配置

   a.新建一个目录用于存储SVN所有文件

#mkdir /home/svn

   b.新建一个版本仓库

#svnadmin create /home/svn/project

   进入该仓库,可以看到该目录下生成了一些目录和文件


编辑svnserve.conf主配置文件,对以下几项修改如下

[general]
anon-access = none    #取消匿名访问
auth-access = write    #授权用户有可写权限
password-db = passwd    #指定用户配置文件,后面会用到
authz-db = authz    #指定权限配置文件,后面会用到

3.添加用户
                要添加SVN用户非常简单,只需在/home/svn/project/conf/passwd文件添加一个形如“username=password"的条目就可以了.为了测试,我添加了如下内容:
 [users]
 # harry = harryssecret
 # sally = sallyssecret
 ADC = ADC_pw
 WE = WE_pw
 SKT = SKT_pw

4.修改用户访问策略
            

###屏蔽掉上面的[groups] 因为在下面添加了
[groups]
devteam = ADC,WE,SKT #devteam 项目组包括两个用户
 
[/]
ADC = rw
WE =
SKT =
[tshop:/tb2c]
@devteam= rw
ADC =
 
[tshop:/tb2b2c]
@devteam= rw
ADC = r
其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。 说明:
devteam = ADC,WE,SKT #devteam 项目组包括三个用户ADC,WE,SKT
[/]
ADC= rw #ADC 对根目录有读写权限
WE =
SKT =     #WE , SKT  对根目录没有任何权限
####如果需要配置tb2c、tb2b2c项目的权限,前提条件是tshop仓库下面需要有这两个项目
####如果没有的话,tshop都将不能访问
[tshop:/tb2c] #对tshop仓库的tb2c项目进行权限控制
@devteam= rw #控制 devteam 组对tb2c项目有读写权限
ADC = #  限制 ADC 所有权限,其它用户有读写权限
[tshop:/tb2b2c] #对 tshop: 仓库的 tb2b2c 项目进行权限控制
@devteam= rw #限制 devteam 组对tb2b2c项目有读写权限
ADC = r #限制 ADC 只有读权限,其它用户有读写权限
注意:
* 权限配置文件中出现的用户名必须已在用户配置文件中定义。
* 对权限配置文件的修改立即生效,不必重启svn。
用户组格式:
[groups]=   ,
其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。
版本库目录格式:
[<版本库>:/项目/目录]
@<用户组名> = <权限>
<用户名> = <权限>
其中,方框号内部分可以有多种写法:
[/],表示根目录及以下,根目录是svnserve启动时指定的,我们指定为/home/svndata,[/]就是表示对全部版本库设置权限。
[tshop:/] 表示对版本库tshop设置权限;
[tshop:/abc] 表示对版本库tshop中的abc项目设置权限;
[tshop:/abc/aaa] 表示对版本库tshop中的abc项目的aaa目录设置权限;
权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。
权限可以是w、r、wr和空,空表示没有任何权限。

5.查看svnserve进程

 # ps  aux  |   grep  svnserve   可以查看当前是否有svnserve进程

6.启动服务器

# svnserve -d -r /home/svn

7.检查是否启动            

#  netstat -tunlp | grep svn

如果显示以下信息说明启动成功

  tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 14339/svnserve    

这里加一点:开放svn端口

默认是3690端口,你也可以用别的。已开启的跳过这一步

在/etc/sysconfig/iptables中添加
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
然后保存,重启iptables
#service iptables restart
查看状态
#service iptables status

8.安装好的svn服务端,默认是不会开机自启动的,每次开机自己启动会很麻烦,我们可以把它设成开机启动
首先:编写一个启动脚本svn_startup.sh,我放在/root/svn_startup.sh

#!/bin/bash
/usr/bin/svnserve -d -r /home/svn/

这里的svnserve路径保险起见,最好写绝对路径,因为启动的时候,环境变量也许没加载。

绝对路径怎么查?

#which svnserve

这里还有可能碰到一个问题,如果你在windows下建立和编写的脚步,拿到linux下,用vi或者vim修改后可能会无法执行,这是文件格式的问题

vi svn_startup.sh

输入:set ff 回车

如果显示的结果不是fileformat=unix

再次输入

set ff=unix

就OK了

然后修改该脚本的执行权限

#chmod ug+x svn_startup.sh

或者万能的

#chmod 777 svn_startup.sh

最后:加入自动运行

#vi /etc/rc.d/rc.local
在末尾添加脚本的路径,如:
#/root/svn_startup.sh

现在,你可以重启一下试试了,以下是查看进程状态指令:

#ps -ef | grep svnserve


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值