操作系统: Gentoo 2007
折腾了好几天终于把SVN服务器搭建好了,下面是安装的过程:
启动服务器,进入系统.
1.       输入emerge subversion ,开始安装
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
2.配置/etc/profile umask值为002,保证同一组成员有相同的权限
  
3.安装sudo 工具,因为脚本里会用到sudo的命令,这里只是安装了app-admin
4.修改/etc/sudoers 文件,打开wheel组。

 

 

5.创建svnusers组,把所有的成员都加到该组,并创建/var/svn 所有的版本库都放到该目录下,方便管理
输入命令
#groupadd svnusers
#mkdir /var/svn
#chown root:svnusers /var/svn

 

6.创建管理员帐号,输入命令:
# useradd -m -G wheel,users,svnusers -s /bin/bash admin
# ssh-keygen -N "" -t dsa -f ~/admin-key   生成KEY
7Copy 密钥到admin目录下
#cp ~/admin-key.pub /home/admin/.ssh/authorized_keys
#chown admin:admin /home/admin/.ssh/authorized_keys
#chmod 400 /home/admin/.ssh/authorized_keys
#chown admin:admin /home/admin/.ssh
#chmod 700 /home/admin/.ssh
8.将私钥Copy到客户端上去,先在客户端机器安装OpenSSH.
输入命令
如下图:

 

7.配置SSH,禁止root帐号远程登录,并禁止使用密码验证,使用文件验证

 

 

配置清单:

 

 

PermitRootLogin

no
StrictModes

yes
PubkeyAuthentication

yes
AuthorizedKeysFile     

.ssh/authorized_keys
PasswordAuthentication

no
ChallengeResponseAuthentication

no
UseDNS
no
8.重启SSH服务
#/etc/init.d/sshd restart

 

9.通过puttygen进行密钥转换,如下图:

导入admin-key文件,点击save private key

 

10.通过putty进行远程登录SVN服务器

 

 

 

选择验证文件,

 

 

点击OPEN,如下图:

 

 

证明连接成功!
11.添加脚本:
#nano –w svnuseradd
Copy 脚本内容,并保存。
#chmod +x svnuseradd  添加执行权限
12.依次添加附录中的所有脚本

 (脚本是别人写的)

13.创建版本库。
#./addrepo ava

 

如果出现无法创建版本库请检查/var/svn的属性是否为rw的权限

 

14.修改版本库的权限,默认版本库的权限是不允许任何人访问的。
配置文件在/ava/conf/authz
15.客户端的连接,如下图:
前提是已经安装好RapidSvn客户端,打开客户端,输入正确的URL地址。
Svn+ssh://username@svnserver/proname
选择目标路径
正确连接后如下图:

 

 

至此SVN服务器安装完毕!!