linux(FC4)下SVN完全配置升级手册(经典)
2006-11-15 14:44
579 查看
linux(FC4)下SVN完全配置升级手册(经典)
这是我这几天升级SVN以到呕吐地部的经验之作。希望能为大家作点贡献。费话不多说开始,
工具包
httpd-2.2.3
下载地址
http://apache.justdn.org/httpd/
apr-1.2.7
apr-util-1.2.7
下载地址
http://apache.justdn.org/apr/
Oracle Berkeley DB 4.3.29 (一定要这个版本。高版本apr不支持)
下载地址
http://www.oracle.com/technology ... ey-db/db/index.html
SVN
下载地址
http://www.iusesvn.com/bbs/download/subversion-1.4.0.tar.gz
开始安装
*********这里的部骤和以前的有所改变请注意一下**********
首先安装Berkeley DB 4.3.29
tar zxvf db-4.3.29.tar.gz
cd db-4.3.29/build_unix
../dist/configure --prefix=/usr/local/db-4.3.29 --enable-compat185
make
make install
安装apr,apr-util
tar zxvf apr-1.2.7.tar.gz
cd apr-1.2.7
./configure --prefix=/usr/local/apr
make
make install
tar zxvf apr-util-1.2.7.tar.gz
cd apr-1.2.7
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-berkeley-db=/usr/local/db-4.3.29/ //****这里是以前没有注意到的地方
make
make install
安装apache
tar zxvf httpd-2.2.3.tar.gz
cd httpd-2.2.3
./configure --prefix=/opt/apache-2.2.3 --enable-so --enable-rewrite=share --enable-proxy=share --enable-proxy-ajp=share --enable-dav=share --enable-dav-fs --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/
make
make install
#apache2.2以后不用再jk2 ,用mod_proxy_ajp模块即可
安装SVN
tar zxvf subversion-1.4.0.tar.gz
cd subversion-1.4.0
./configure --prefix=/opt/subverion --with-apxs=/opt/apache-2.2.3/bin/apxs --with-berkeley-db=/usr/local/db-4.3.29/ --with-ssl
make
make install
×××××××××××××安装完成×××××××××××××
如果在安装过程当中出现问题可以参考后面网址中的内容。
其中有一些包之间的兼容性问题,在这里就不多说,后面有一些网址上面有些说明自己可以看看。
配置
/创建库文件所在的目录
# 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 /opt/subverion/bin
//这条语句将把路径/home/user/import下找到的文件导入到你创建的Subversion 仓库中去,
//提交后的修订版为1。
# ./svn import /home/user/import file:///home/svnroot/repository/test –m "注释"
//不让其他人有该目录的权限 这里的用户名可以自己定
# chown -R username:usergroup /home/svnroot/repository //****这里也有所改变
#后面有如何添加用户的命令
# 修改版本库配置文件:
版本库1:
vi /opt/svndata/repos1/conf/svnserve.conf
内容修改为:
[general]
anon-access = none
auth-access = write
password-db = /home/svnroot/repository/authfile
authz-db = /home/svnroot/repository/authz.conf
realm = test
修改Apache配置文件
# cd /opt/apache-2.2.3/bin
//启动Apache
# ./apachect1 start
# vi /opt/apache-2.2.3/conf/httpd.conf
//在最下面添加
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /home/svnroot/repository/ //svn父目录
AuthzSVNAccessFile /home/svnroot/repository/authz.conf //权限配置文件
AuthType Basic //连接类型设置
AuthName "Subversion.zoneyump" //连接框提示
AuthUserFile /home/svnroot/repository/authfile //用户配置文件
Require valid-user //采用何种认证
</Location>
//其中authfile是通过
htpasswd -b -c /home/svnroot/repository/authfile username password
//来创建的
//"Require valid-user"告诉apache在authfile中所有的用户都可以访问。如果没有它,
//则只能第一个用户可以访问新建库
重启apache
cd /opt/apache-2.2.3/bin/
./apachectl restart
//打开浏览器访问http://localhost/svn/test/,如果有东西显示就说明成功。
这里的权限和用户可以自己去定义
7.权限管理
1)增加用户
# htpasswd /home/svnroot/repository/authfile wooin
//第一次设置用户时使用-c表示新建一个用户文件。回车后输入用户密码,完成对用户的增加
# htpasswd authfile 用户名(加入新的用户)
2)权限分配
配置用户访问权限:
vi /home/svnroot/repository/authz.conf
为了简化配置,3个版本库共用1个权限配置文件/home/svnroot/repository/pwd.conf。如有必要,也可以分开。文件中定义用户组和版本库目录权限。
注意:
* 权限配置文件中出现的用户名必须已在用户配置文件中定义。
* 对权限配置文件的修改立即生效,不必重启svn。
用户组格式:
[groups]
<用户组名> = <用户1>,<用户2>
其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。
版本库目录格式:
[<版本库>:/项目/目录]
@<用户组名> = <权限>
<用户名> = <权限>
其中,方框号内部分可以有多种写法:
/,表示根目录及以下。根目录是svnserve启动时指定的,我们指定为/home/svnroot/repository。这样,/就是表示对全部版本库设置权限。
test:/,表示对版本库test设置权限
权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。
示例:
[groups]
admin = mangosoft
[/]
@admin = rw
[test:/]
@admin = rw
lsw = rw
删除无用文件:
rm /home/svnroot/repository/test/conf/authz
rm /home/svnroot/repository/test/conf/passwd
3. 启动svn
建立启动svn的用户:
useradd svnroot
passwd svnroot
根据提示为用户svnroot设置密码
允许用户svn访问版本库:
chown –R svnroot:daemon /home/svnroot/repository
启动svn:
su -c "svnserve -d --listen-port 9999 -r /opt/svndata" svnroot
其中:
su – svn表示以用户svn的身份启动svn
-d表示以daemon方式(后台运行)运行
--listen-port 9999表示使用9999端口,可以换成你需要的端口。但注意,使用1024以下的端口需要root权限
-r /opt/svndata指定根目录是/opt/svndata
检查:
ps -ef|grep svnserve
如果显示如下,即为启动成功:
svn 6941 1 0 15:07 ? 00:00:00 svnserve -d --listen-port 9999 -r /opt/svndata
将这个设置完成后。重启Apache,就可以通过
http://localhost/svn/test
这个URL来访问仓库了,当然,受权限的限制,必须是合法用户才能访问且具有相应的权限
备注:
1。 apache进程的权限:因为所有跟仓库传输的操作都是通过apache进程进行的,所以即使你给svn用户设置了很大的权限,但是apache进程没有 访问仓库或者相关文件的权限也没有用,apache进程的权限设置在 /opt/apache-2.2.3/conf/httpd.conf 文件中配置,找到文件中的这两行:
User daemon # 将daemon改为svnroot,
Group daemon
2。
在/etc/profile的结尾设置一些svn启动时要做的工作
# start apache server for svn
/opt/apache-2.2.3/bin/apachectl start
export SVN_EDITOR=vi
3。/home/svnroot/respository下的文件操作权限有给svnroot.
相关网址
http://www.newbooks.com.cn/info/52691.html
http://www.neo.com.tw/archives/000614.html
http://www.goodspeed.com.cn/apache.html
http://blog.java-cn.com/user1/5463/archives/2005/15238.html
http://www.zhangjianfeng.com/?p=481
http://blog.yening.cn/2006/08/07/165.html
http://www.zeali.net/entry/359
http://www.iusesvn.com/bbs/thread-489-1-1.html
这是我这几天升级SVN以到呕吐地部的经验之作。希望能为大家作点贡献。费话不多说开始,
工具包
httpd-2.2.3
下载地址
http://apache.justdn.org/httpd/
apr-1.2.7
apr-util-1.2.7
下载地址
http://apache.justdn.org/apr/
Oracle Berkeley DB 4.3.29 (一定要这个版本。高版本apr不支持)
下载地址
http://www.oracle.com/technology ... ey-db/db/index.html
SVN
下载地址
http://www.iusesvn.com/bbs/download/subversion-1.4.0.tar.gz
开始安装
*********这里的部骤和以前的有所改变请注意一下**********
首先安装Berkeley DB 4.3.29
tar zxvf db-4.3.29.tar.gz
cd db-4.3.29/build_unix
../dist/configure --prefix=/usr/local/db-4.3.29 --enable-compat185
make
make install
安装apr,apr-util
tar zxvf apr-1.2.7.tar.gz
cd apr-1.2.7
./configure --prefix=/usr/local/apr
make
make install
tar zxvf apr-util-1.2.7.tar.gz
cd apr-1.2.7
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-berkeley-db=/usr/local/db-4.3.29/ //****这里是以前没有注意到的地方
make
make install
安装apache
tar zxvf httpd-2.2.3.tar.gz
cd httpd-2.2.3
./configure --prefix=/opt/apache-2.2.3 --enable-so --enable-rewrite=share --enable-proxy=share --enable-proxy-ajp=share --enable-dav=share --enable-dav-fs --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/
make
make install
#apache2.2以后不用再jk2 ,用mod_proxy_ajp模块即可
安装SVN
tar zxvf subversion-1.4.0.tar.gz
cd subversion-1.4.0
./configure --prefix=/opt/subverion --with-apxs=/opt/apache-2.2.3/bin/apxs --with-berkeley-db=/usr/local/db-4.3.29/ --with-ssl
make
make install
×××××××××××××安装完成×××××××××××××
如果在安装过程当中出现问题可以参考后面网址中的内容。
其中有一些包之间的兼容性问题,在这里就不多说,后面有一些网址上面有些说明自己可以看看。
配置
/创建库文件所在的目录
# 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 /opt/subverion/bin
//这条语句将把路径/home/user/import下找到的文件导入到你创建的Subversion 仓库中去,
//提交后的修订版为1。
# ./svn import /home/user/import file:///home/svnroot/repository/test –m "注释"
//不让其他人有该目录的权限 这里的用户名可以自己定
# chown -R username:usergroup /home/svnroot/repository //****这里也有所改变
#后面有如何添加用户的命令
# 修改版本库配置文件:
版本库1:
vi /opt/svndata/repos1/conf/svnserve.conf
内容修改为:
[general]
anon-access = none
auth-access = write
password-db = /home/svnroot/repository/authfile
authz-db = /home/svnroot/repository/authz.conf
realm = test
修改Apache配置文件
# cd /opt/apache-2.2.3/bin
//启动Apache
# ./apachect1 start
# vi /opt/apache-2.2.3/conf/httpd.conf
//在最下面添加
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /home/svnroot/repository/ //svn父目录
AuthzSVNAccessFile /home/svnroot/repository/authz.conf //权限配置文件
AuthType Basic //连接类型设置
AuthName "Subversion.zoneyump" //连接框提示
AuthUserFile /home/svnroot/repository/authfile //用户配置文件
Require valid-user //采用何种认证
</Location>
//其中authfile是通过
htpasswd -b -c /home/svnroot/repository/authfile username password
//来创建的
//"Require valid-user"告诉apache在authfile中所有的用户都可以访问。如果没有它,
//则只能第一个用户可以访问新建库
重启apache
cd /opt/apache-2.2.3/bin/
./apachectl restart
//打开浏览器访问http://localhost/svn/test/,如果有东西显示就说明成功。
这里的权限和用户可以自己去定义
7.权限管理
1)增加用户
# htpasswd /home/svnroot/repository/authfile wooin
//第一次设置用户时使用-c表示新建一个用户文件。回车后输入用户密码,完成对用户的增加
# htpasswd authfile 用户名(加入新的用户)
2)权限分配
配置用户访问权限:
vi /home/svnroot/repository/authz.conf
为了简化配置,3个版本库共用1个权限配置文件/home/svnroot/repository/pwd.conf。如有必要,也可以分开。文件中定义用户组和版本库目录权限。
注意:
* 权限配置文件中出现的用户名必须已在用户配置文件中定义。
* 对权限配置文件的修改立即生效,不必重启svn。
用户组格式:
[groups]
<用户组名> = <用户1>,<用户2>
其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。
版本库目录格式:
[<版本库>:/项目/目录]
@<用户组名> = <权限>
<用户名> = <权限>
其中,方框号内部分可以有多种写法:
/,表示根目录及以下。根目录是svnserve启动时指定的,我们指定为/home/svnroot/repository。这样,/就是表示对全部版本库设置权限。
test:/,表示对版本库test设置权限
权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。
示例:
[groups]
admin = mangosoft
[/]
@admin = rw
[test:/]
@admin = rw
lsw = rw
删除无用文件:
rm /home/svnroot/repository/test/conf/authz
rm /home/svnroot/repository/test/conf/passwd
3. 启动svn
建立启动svn的用户:
useradd svnroot
passwd svnroot
根据提示为用户svnroot设置密码
允许用户svn访问版本库:
chown –R svnroot:daemon /home/svnroot/repository
启动svn:
su -c "svnserve -d --listen-port 9999 -r /opt/svndata" svnroot
其中:
su – svn表示以用户svn的身份启动svn
-d表示以daemon方式(后台运行)运行
--listen-port 9999表示使用9999端口,可以换成你需要的端口。但注意,使用1024以下的端口需要root权限
-r /opt/svndata指定根目录是/opt/svndata
检查:
ps -ef|grep svnserve
如果显示如下,即为启动成功:
svn 6941 1 0 15:07 ? 00:00:00 svnserve -d --listen-port 9999 -r /opt/svndata
将这个设置完成后。重启Apache,就可以通过
http://localhost/svn/test
这个URL来访问仓库了,当然,受权限的限制,必须是合法用户才能访问且具有相应的权限
备注:
1。 apache进程的权限:因为所有跟仓库传输的操作都是通过apache进程进行的,所以即使你给svn用户设置了很大的权限,但是apache进程没有 访问仓库或者相关文件的权限也没有用,apache进程的权限设置在 /opt/apache-2.2.3/conf/httpd.conf 文件中配置,找到文件中的这两行:
User daemon # 将daemon改为svnroot,
Group daemon
2。
在/etc/profile的结尾设置一些svn启动时要做的工作
# start apache server for svn
/opt/apache-2.2.3/bin/apachectl start
export SVN_EDITOR=vi
3。/home/svnroot/respository下的文件操作权限有给svnroot.
相关网址
http://www.newbooks.com.cn/info/52691.html
http://www.neo.com.tw/archives/000614.html
http://www.goodspeed.com.cn/apache.html
http://blog.java-cn.com/user1/5463/archives/2005/15238.html
http://www.zhangjianfeng.com/?p=481
http://blog.yening.cn/2006/08/07/165.html
http://www.zeali.net/entry/359
http://www.iusesvn.com/bbs/thread-489-1-1.html
相关文章推荐
- linux(FC4)下SVN完全配置升级手册
- linux下搭建SVN服务器完全手册
- linux下搭建SVN服务器完全手册-很强大!!!!!
- 网站HTTP升级HTTPS完全配置手册
- linux下搭建SVN服务器完全手册
- linux nfs 完全配置手册+说明文档
- linux下搭建SVN服务器完全手册
- linux下搭建SVN服务器完全手册-很强大!!!!!
- linux下搭建SVN服务器完全手册--很强大!!!!!
- linux下搭建SVN服务器完全手册
- linux下搭建SVN服务器完全手册
- linux下搭建SVN服务器完全手册
- linux下搭建SVN服务器完全手册
- Linux下 SVN +Apache+SSL配置手册+apache自动启动脚本 --写给菜鸟的详细配置
- linux下搭建SVN服务器完全手册
- 【转】 linux下搭建SVN服务器完全手册
- linux下搭建SVN服务器完全手册
- 网站HTTP升级HTTPS完全配置手册
- 网站 HTTP 升级 HTTPS 完全配置手册
- linux下搭建SVN服务器完全手册-很强大!!!!!