最近在折腾vps,顺便把一些东西都熟悉一遍。
本文主要介绍SVN独立服务器的的安装和简单配置:
安装(CentOS下yum即可方便的完成安装)
# yum install subversion 测试安装是否成功: # svnserve --version 回车显示版本说明安装成功
首先我的目录结构是这样的:
/var/svn
| – conf #svn相同的配置
| – passwd #svn用户及密码
| – authz #svn权限控制
| – svndata # svn版本库存放文件夹
| – test # 一个名为test的版本库
…
建立版本库
# mkdir /var/svn/svndata 创建svn数据目录(目录可自行制定) # svnadmin create /svndata/test test就是版本库的名字,可以改变!
配置svn配置文件(为了方便管理,这里多个库调用相同的配置文件。)
#每个版本库创建之后都会生成svnserve.conf主配文件 # vim /svndata/test/conf/svnserve.conf
[general] anon-access = none auth-access = write password-db = /var/svn/svndata/conf/passwd authz-db = /var/svn/svndata/conf/authz realm = test
# mkdir /var/svn/conf # vim /var/svn/conf/passwd //svn用户配置文件
[users] user1 = password1 user2 = password2 user3 = password3 user4 = password4
# vim /var/svn/conf/authz //svn权限控制配置文件
[groups] #设置组 group1 = user1,user2 #多用户用逗号隔开 [/] #根目录权限设置(就是“test”这个文件夹) user3 = rw #用户1权限是:可读写 user4 = r #用户2权限是:可读,不可写 user = #什么都没写代表没有任何权限 @group1 = rw #设置组权限 [test:/123] #设置根目录下“123”文件夹的权限 #说明“123”这个文件件怎么创建?这是在SVN服务器配置好之后,创建一个权限很高的用户在客户端登录SVN #然后创建一个文件夹“123”。
启动服务器
可以先确认下是否已经启动 ps aux | grep svnserve
如果已经启动,直接关掉。 killall svnserve
然后手动命令启动 指定svn库地址,搭建过程中就在这栽了
# svnserve -d -r /var/svn/svndata -d表示以daemon方式(后台运行)运行 -r /svndata指定根目录是/svndata
自启动服务使用 chkconfig svnserve on 启动
系统默认启动时不带svn库地址的,所以会报“找不到版本库”错误,所以我们应该在系统启动时加上svn版本库地址 “-r /var/svn/svndata/ ”
修改/etc/rc.d/init.d/svnserve (这是系统自启动脚本地址),将svnserve 命令 添加上 -r /var/svn/svndata/
查看端口: netstat –ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 16411/vsftpd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 27573/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 20849/master
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 15690/svnserve
tcp 0 0 :::80 :::* LISTEN 22370/httpd
tcp 0 0 :::22 :::* LISTEN 27573/sshd
tcp 0 0 ::1:25 :::* LISTEN 20849/master