本文结合自己实际操作,对网上教程进行稍加整改。让新手少走弯路。
第一步:通过yum命令安装svnserve
#yum -y install subversion
安装完成会自动停止命令运行
若需查看svn安装位置,可以用以下命令:
#rpm -ql subversion
第二步:创建版本库目录(此仅为目录,为后面创建版本库提供存放位置)
选择在var路径下创建版本库,当前处于根目录下,一次性创建如下:
#mkdir /root/svn/
第三步:创建svn版本库
在第二步建立的路径基础上,创建版本库,命令如下:
#svnadmin create /root/svn/demo (demo为你的版本库名称)
进入demo目录下,会有如下几个文件
>cd /root/svn/demo/ conf db format hooks locks README.txt
第四步:配置修改
进入已经创建好的版本库目录下
进入conf
#cd /root/svn/demo/conf
conf目录下,一共存放三份重要的配置文件,如下:
authz:负责账号权限的管理,控制账号是否读写权限
passwd:负责账号和密码的用户名单管理
svnserve.conf:svn服务器配置文件
修改authz文件信息,如下:
vi authz
【groups】下添加组,在文件末尾添加组权限。
[groups] admin = zhg //zhg是登陆名,属于admin组 noadmin = test //test是登陆名,属于noadmin组 [/] @admin = rw //admin组有读写权限 @noadmin = r //noadmin只有读没有写权限
修改passwd文件信息
#vi passwd
账号 = 密码
zhg = 123456 test = 123456 对应上面authz的登陆名。
修改svnserve.conf
#vi svnserve.conf
原始文件内容,都被注释掉的,我们只需要去掉4条指定内容前注释即可,如下:
必须注意,#号删除后保证顶格,不要有空格,不然连接会出错(本人因此被坑,找了很久)
本人将anon-access =read换成了anon-access =none,因为我要看历史记录,所以这样改了
到此,配置已经全部完成,账号信息已经添加成功
第五步:防火墙开启
多数情况下服务器安装完成,配置完成后,无法连接svn服务器,均是防火墙问题,大家按照如下3条命令逐一执行即可,也可以关闭防火墙,#service iptable stop
#/sbin/iptables -I INPUT -p tcp --dport 3690 -j ACCEPT #/etc/init.d/iptables save #service iptables restart
六:启动svn服务器
在跟目录下,执行如下命令:
>svnserve -d -r /var/svn/
启动成功后,可用ps -aux查看服务启动是否成功
关闭:skillall svn
七:客户端访问svn服务器
在windows客户端,输入地址:svn://ip地址:3690/demo (iP地址为你linux的ip,demo为前文创建的版本库名称,3690为svn默认端口)
弹出输入用户名和密码,输入即可访问
到此,Linux下svn服务器搭建就总结完毕,感谢大家的阅读
最重要的一点是,如果服务器的安全组对端口并没有全部开放,会导致连接不上,所以需要去控制台配置安全组入网规则,我的是阿里云,我还要去阿里云控制台配置安全组,开放3690端口,大家可以放行全部端口,免得日后其他软件仍需配置。