目录
Subversion安装......................................................................................1
安装准备...........................................................................................1 1. 安装Apache2.2.8.........................................................................1 2. apr和apr-util的安装....................................................................1 3. 安装Subversion 1.4.6...................................................................2 4. 安装后的系统设置.......................................................................2 5.修改Apache配置文件...................................................................3 6.重启apache....................................................................................4 7.权限管理........................................................................................4
0
Subversion安装
安装准备
操作系统为 Red Hat Enterprise Linux AS release 5 Apache----- httpd-2.2.8.tar.gz
Subversion 1.4.6------ subversion-1.4.6.tar.gz
1. 安装Apache2.2.8
用root账号执行以下命令:
tar zxf httpd-2.2.8.tar.gz #解压到当前目录 cd httpd-2.2.8 #进入解压后的目录
./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all --enable-dav=share --enable-dav-fs --with-ldap --enable-ldap --enable-authnz-ldap --enable-authn-alias
#定义安装的目标路径(可据自己需要修改),使能LDAP make #编译 make install #安装
/local/svnroot/apache/bin/apachectl start #启动Apache
用IE访问以下网址,http://172.16.0.247:81/,如果提示It works!,则Apache安装成功。
然后就可以先停止Apache了:
/local/svnroot/apache/bin/apachectl stop #停止Apache 2. apr
和apr-util的安装
把解压的http-2.2.8/srclib里的apr和apr-util拷贝到usr/local/里,替换掉Subversion自带的apr和 apr-util。
1
3. 安装Subversion 1.4.6
用root账号执行以下命令:
tar zxf subversion-1.4.6.tar.gz #解压到当前目录 cd subversion-1.4.6 #进入解压后的目录
#./configure --with-apxs=/usr/local/apache/bin/apxs --prefix=/usr/local/subversion --with-apr=/usr/local/apache --with-apr-util=/usr/local/apache --with-ssl --with-zlib --enable-maintainer-mode
#定义安装的目标路径(可据自己需要修改),指明Apache的安装路径,使能SSL make #编译 make install #安装
4. 安装后的系统设置
用root账号执行以下命令:
useradd svnroot #创建Linux系统里的账号svnroot passwd svnroot #设置svnroot账号的密码 进入svnroot账户:
# mkdir /home/svnroot/repository //进入subversion的bin目录 # cd /usr/local/subversion/bin //创建仓库\"test\"
# ./svnadmin create /home/svnroot/repository/test # cd /home/svnroot/repository/test
//看看是不是多了些文件,如果是则说明Subversion安装成功了 # ls –l
# cd /usr/local/subversion/bin //该目录的权限,读写执行
# chmod 777 /home/svnroot/repository
2
5.修改Apache配置文件
# cd /usr/local/apadche/bin //启动Apache # ./apachectl start
# vi /usr/local/apache/conf/httpd.conf //在最下面添加 (如果有就不用添加)
LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so 以下一定要添加 SVNParentPath /home/svnroot/repository/ AuthzSVNAccessFile /home/svnroot/repository/authz.conf AuthType Basic AuthName \"Subversion.zoneyump\" AuthUserFile /home/svnroot/repository/passwd Require valid-user
记住把httpd.conf配置成user svnroot group svn,要不然只能是一个用户使用。 Shift+分号,输入wq保存后退出编辑模式 :wq 解释: “DAV svn
SVNParentPath /home/svnroot/repository/ //svn父目录
AuthzSVNAccessFile /home/svnroot/repository/authz.conf //权限配置文件 AuthType Basic //连接类型设置
AuthName \"Subversion.zoneyump\" //连接框提示
AuthUserFile /home/svnroot/repository/authfile //用户配置文件
3
Require valid-user //采用何种认证
//其中authfile是通过\"htpasswd [–c] /home/svnroot/repository/authfile username password\"来创建的
//\"Require valid-user\"告诉apache在authfile中所有的用户都可以访问。如果没有它,
//则只能第一个用户可以访问新建库” 解释!
6.重启apache
# ./usr/local/apache2/bin/apachectl restart
//打开浏览器访问http://172.16.0.247:81/svn/test/,如果有东西显示就说明成功。
7.权限管理
1)增加用户
# htpasswd -c /home/svnroot/repository/passwd user1
//第一次设置用户时使用-c表示新建一个用户文件。回车后输入用户密码,完成对用户的增加 2)权限分配
# vi /home/svnroot/repository/authz.conf 如下(参考): [groups]
hld = user1,user2,user3 admin=useradmin devteamcs=useradmin,zlh @admin=rw * = r [jp:/] * = r @admin=rw @devteamcs=rw
4
[/] //这个表示在所有仓库的根目录下 * = r //这个表示对所有的用户都具有读权限 #[groups] //这个表示群组设置
#svn1-developers = wooin, bao //这个表示某群组里的成员 #svn2-developers = wooin #[svn1:/]
#@svn1-developers = rw //如果在前面加上@符号,则表示这是个群组权限设置 将这个设置完成后。重启Apache,./usr/local/apache2/bin/apachectl restart就可以通过http://172.16.0.247:81/svn/test/
这个URL来访问仓库了,当然,受权限的限制,必须是合法用户才能访问且具有相应的权限
这样subversion服务器端就完成了。
5
因篇幅问题不能全部显示,请点此查看更多更全内容