一、安装前准备及安装
1、检查是否安装了低版本的svn
rpm -qa subversion
2、如果安装了低版本的svn或者不符合自己版本的svn则卸载
yum remove subversion
3、安装svn
yum install subversion
4、检验已经安装的SVN版本信息
svnserve --version
二、安装后各种配置
1、创建svn根目录
#mkdir -p /opt/svn/
2、创建bigdata测试库
#svnadmin create /opt/svn/bigdata
3、svnserver.conf文件配置
注意:
(1) realm只写bigdata。
不要写成:realm=/opt/svn/bigdata (这样写有可能出错)
(2)authz-db后面的authz可以写全路径,也可以只写authz
(3)不注释password-db=passwd则在conf/passwd文件中设置的用户名=密码是有效的。
我这里注释了,是因为要避免passwd中密码的明文显示。使用了SASL加密技术。
注意:
这里使用的是SASL加密技术,但是sasldb按常理说应该看不到密码,但是cat sasldb就能看到,vim sasldb就看不到。一直不知道啥原因。
3、authz文件配置
注意:
(1)前面不能有空格
(2)realm=bigdata在svnserver.conf中至关重要。bigdata一定不能写成全路径,否则配置权限不生效。
(3)权限配置到哪个路径,对应账号登陆的时候要把svn写到哪个路径。
(4)无论普通的登录还是SASL加密,都需要配置auth:普通的用户密码登录如下:
如果是一个版本库,那应该设置成如下:
[groups]
admin = user1,user2
[/]
@admin=rw
如果是多个版本库,那就应该设置成这样:
[groups]
admin = user1,user2
[repos1:/]
@admin=rw
4、svn.conf的配置(使用SASL加密技术要配置此项)
注意:
(1)保存密码的sasldb文件会自动生成。
(2)svn.conf是在/etc/sasl2中创建的。
三、启动svnserve
1、启动svn服务
svnserve -d -r /opt/svn/
2、查看svn进程
ps -ef|grep svnserve
3、查看svn默认端口号3690是否开启
# netstat -ln |grep 3690
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN
4、客户端登陆
svn://ip/bigdata
注意:
如果启动svn使用的是:svnserve -d -r /opt/svn/bigdata,则客户端这样登陆:svn://ip
5、杀死svn进程
killall svnserve
6、改变svn服务端口号
如果已经有svn在运行,可以换一个端口运行
svnserve -d -r /opt/svn/ --listen-port 3391
四、遇到的问题:
1、在阿里云服务器上安装了svn服务并且已经启动,却在本机windows上的svn客户端连接不上:
解决办法:登录阿里云服务器web页面,放开3690端口