设为首页 收藏本站
查看: 705|回复: 0

[经验分享] 虚拟机centos上建立svn服务器

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-1-12 08:32:59 | 显示全部楼层 |阅读模式
其实网络上有不少人都分享过用linux建立svn服务器的过程,但是实际自己操作起来还是困难重重的,很多错误就稀里糊涂的出现了。鄙人学了2天的linux基本命令操作,就急急跑来完成第一个任务:建立svn服务器。由于底子薄,出了问题更是比别人付出千百倍的能力去解决,真是不容易啊


言归正传,第一步先安装svn的软件

# yum install subversion:

然后建立一个专门用来装SVN东西的目录

#mkdir /svn/

使用svn自己带的命令来在这个目录下面再做一个目录

#svnadmin create /svn/project   

#ls /svn/project/   

#conf db format hooks locks README.txt   

这里有四个文件夹,都是有用的。

l hooks目录:放置hook脚本文件的目录

l locks目录:用来放置subversion的db锁文件和db_logs锁文件的目录,用来追踪存取文件库的客户端

l format文件:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号

l conf目录:是这个仓库的配置文件(仓库的用户访问账号、权限等)

而我们要做的就是深入conf目录里,把里面所有的文件都要一一翻新一下。

配置svn服务的配置文件svnserver.conf文件

# vi /svn/project/conf/svnserve.conf   
[general]      #注意这里,一定要保留!!!#
anon-access = none     #这里是顶头的,没有#啦#
auth-access = write   
password-db = /svn/project/conf/passwd   
authz-db = /svn/project/conf/authz   
realm = Chris Test Repository #这是个提示信息

然后:x保存一下。

添加两个访问用户及口令

# vi /svn/project/conf/passwd   进入passwd文件
[users]   #同上,这个要保留滴!!!#
chen = 123456   
james = 123456   
allen = 123456

我们建立了三个用户名以及他们对应的密码,保存。


配置新用户的授权文件

# vi /svn/project/conf/authz   
[groups]   
admin = chen,james     #建立了一个叫admin的组,组员有chen,james#
user = allen           #又建立了一个叫user的组,组员有allen#
[/]                    #这些人可以访问根目录以下的东西#
@admin = rw            #admin组员的权限是可读和可写#
@user = r              #user组员的权限是可读#
* =                    #不是以上两个组的用户,滚犊子~#

* = 这句话很重要,一定要加!

  启动svn服务

svnserve -d -r /svn/project/   其中,默认svn服务器端口是3690。

然后在虚拟机上先联网,然后ifconfig一下,查看自己的IP,我的机器是192.168.157.128.那么返回终端,使用svn checkout svn://192.168.157.128/project (注意!这里直接是project,不是/svn/project.)


如果这里命令写错了,写成了svn checkout svn://192.168.157.128,那么将会报出

svn:No repository found in "svn://192.168.157.128" 的错误,所以要注意后面的仓库路径。
wKiom1aTzlPjipl6AACJSa1v48A506.jpg
这个时候,你的屏幕应该是这样的,大胆输入yes,反馈你取出版本0。至于为什么是版本0,我也不知道,而且这个问题在百度上找不到。
这个时候,在主机端下载好TortoiseSVN和他的中文汉化包,一路next安装完毕,然后需要重启一下方可正式使用。
TortoiseSVN他跟以往普通的软件不同,他没有桌面快捷方式,他的安装路径里也没有.exe这样的可执行文件,他就是一个壳文件,寄生在别的文件夹里使用。
重启完毕之后,在文件上点击鼠标的右键就发现多了“SVN检出”和“Tortoise SVN”这俩东西,在“Tortoise SVN”里,找到setting,在语言栏选择“简体中文”,这样就完成了汉化。
然后打开TortoiseSVN Repository Brower工具,在地址栏里输入“svn://192.168.157.128/project/”,就应该弹出来输入用户名和密码。
但是如果显示连接超时,那么需要用主机和虚拟机互ping,必须要求双方能ping通,我的虚拟机采用的是默认的nat,没有使用桥接。直接ping通,而且主机和虚拟机是不用在同一个网段里的。这里不用telnet,没有用的,这个思路是错的,我在这个思路上纠结了很长的时间。而且也不用在后面加上端口号3690。
如果双方能互相的ping通,但是TSVN的浏览器还是不能发现虚拟机里的服务器,提示“积极拒绝,无法连接”,那么果断的把虚拟机的防火墙STOP掉,或者把默认的3690端口加入到虚拟机的防火墙里。
stop防火墙的命令:/etc/init.d/iptables stop
防火墙加入3690端口的命令:/sbin/iptables -I INPUT -p tcp --dport 3690 -j ACCEPT
然后/etc/init.d/iptables restart 重启一下生效。
这样应该能链接到虚拟机的服务器端了。如图所示
wKiom1aT0WPxwjzOAADDoaTCk7Q419.jpg
这样,就算彻底的安装成功了。
如果想要关闭SVN server,那可以使用kill命令,如下例子
# ps -ef|grep svn
root      4642     1  0 16:08 ?        00:00:00 svnserve -d -r /svn/project/
root      4692  3676  0 16:13 pts/2    00:00:00 grep svn
# kill -9 4642



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-163254-1-1.html 上篇帖子: (Linux) mypstree 下篇帖子: linux deb 服务器 虚拟机
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表