SVN是一个安全虚拟网络系统,它将系统整体的信息安全功能均衡合理地分布在不同的子系统中,使各子系统的功能得到最大限度的发挥,子系统之间互相补充,系统整体性能大于各子系统功能之和,用均衡互补的原则解决了"木桶原理"的问题。
环境:
CentOS release 5.5 (Final) x64
IP:10.0.0.110
#安装部署
检查是否安装了低版本的SVN
rpm -qa subversion
[root@ tools#]rpm -qa subversion
subversion-1.4.2-4.el5_3.1
subversion-1.4.2-4.el5_3.1 subversion-1.4.2-4
#卸载
yum remove subversion
安装svn
yum install subversion -y
mkdir -p /linuxidc/data/{svndata,svnpasswd}
启动SVN服务指定服务的SVN根目录
svnserve -d -r /linuxidc/data/svndata/ --pid-file=/linuxidc/data/svndata/svn.pid
查看 SVN 进程:
[root@ tools#]ps -ef|grep svn|grep -v grep
root 27543 1 0 14:10 ? 00:00:00 svnserve -d -r /linuxidc/data/svndata/ --pid-file=/linuxidc/data/svndata/svn.pid
检测 SVN 端口:
[root@ tools#]netstat -ln |grep 3690
tcp 0 0 :::3690 :::* LISTEN
建立版本库
创建一个新的 Subversion 项目 trunk
svnadmin create /linuxidc/data/svndata/trunk
配置允许用户 linuxidc 读写访问
cd /linuxidc/data/svndata/trunk/conf/
vi svnserve.conf 修改
=================================================
12 anon-access = none
13 auth-access = write
18 password-db = /linuxidc/data/svnpasswd/passwd
25 authz-db = /linuxidc/data/svnpasswd/authz
=================================================
/etc/init.d/httpd start
注: svnserve.conf 中每个参数都要顶格写,开头不能有空格。
cp authz passwd /linuxidc/data/svnpasswd/
authz 的配置:
cd /linuxidc/data/svnpasswd/
vi authz
添加
#################################
[groups]
#定义组
g_webadmin = linuxidc
#定义目录
[trunk:/]
@g_webadmin = rw
#################################
提示:注意 authz 权限格式的写法
1.authz 中每个参数都要顶格写,开头不能有空格。
2.对于组,要@开头,用户不需要@开头。
passwd 文件用户及密码的设置
vi passwd
添加:
#######################
# user=passwd
linuxidc=linuxidc
######################
提示:
1.等号前为 SVN 帐号,等号后为 svn 密码
2.更改 svnserve.conf 时,需要重起 SVN,更改 authz,passwd 文件时不需要重启
重启 SVN 命令<非必需>
kill -USR1 `cat /linuxidc/data/svndata/svn.pid`
svnserve -d -r /linuxidc/data/svndata/ --pid-file=/linuxidc/data/svndata/svn.pid
提示:当更改 svnserve.conf 时,需要重起 SVN,更改 authz,passwd 文件时不需要重起
到此服务器部署完成
客户端安装
客户端软件
TortoiseSVN-1.6.5.16974-win32-svn-1.6.5.msi
连接:
svn://10.0.0.110/trunk
用户名 linuxidc 密码 linuxidc