首页是关于svn的备份和还原

比较快捷的方式:

备份:svnadmin hotcopy /opt/svn/svntest/ /var/tmp/svntest_20120604 --clean-logs

还原:直接把本分的文件拷贝的新服务器创建新的版本库直接替换就可以了,本文就是做这么个事。

回到主题:

     一、安装Apache和SVN

在安装之前可以检查一下是否在操作系统安装时已经安装了这些软件,如果没有可以使用下面的命令安装:

> yum install httpd

运行该命令时,会列出要安装的文件和依赖的包,输入y,回车即可。

> yum install mod_dav_svn subversion

     二、配置Apache

首先使用service命令启动apache,

>service apache start

有时候会提示找不到service命令,可以使用/sbin/service 代替service。

然后,要将httpd配置可以随系统启动而启动的服务,

>chkconfig httpd on

三、配置SVN

在配置完了Apache后,就要将二者结合起来了。如下操作:

1. 新建一个仓库目录:

> cd /var/www

如果没有svn目录,新建一个

> mkdir svn

使用svnadmin创建一个代码库:

> svnadmin create repos

修改apache对repos的访问权限

> chown apache.apache -R repos

2. 修改subversion.conf配置文件

> cd /etc/httpd/conf.d

> vim subversion.conf

subversion.conf的详细内容:

<Location /repos>
DAV svn
SVNParentPath /db/c
AuthType Basic
AuthName "Subversion repository"
#密码存储文件
AuthUserFile /db/c/back/conf/passwd
Require valid-user
#用户访问目录的权限文件
AuthzSVNAccessFile /db/c/back/conf/authz
</Location>

  

3. 修改httpd.conf配置文件

> cd /etc/httpd/conf

> vim httpd.conf

增加三个so

LoadModule version_module modules/mod_version.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

四、完善SVN配置,增加用户控制

1、增加用户  

htpasswd -c /db/c/back/conf/passwd username

2、AuthzSVNAccessFile:authz中配置用户组和用户权限

示例:

[groups]
admin = user1
leader = user2,user3

[/]
* = r
@admin = rw
@leader =rw
[/00-CMMI5级过程改进]
* =
user1 = rw

其它自己搜索解决吧

中途遇到一些问题:

1."The URI does not contain the name of a repository. [403, #190001]  "

原因是: subversion.conf中的SVNParentPath参数不应该包含svn库文件夹

访问路径中则要加上svn库的文件夹,例如:http://192.168.32.128/repos/back

2、linux文件权限问题

chown -R apache:apache passwd
      chmod -R 774 passwd

svn提交的时候出现错误,

  提示/www/.svn权限不够,
  chown apache:apache /www/.svn
  chmod -R 775 /www/.svn

我没解决,用大招:关闭SELinux

查看SELinux状态:
1、/usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态
SELinux status: enabled
2、getenforce ##也可以用这个命令检查
关闭SELinux:
1、临时关闭(不用重启机器):
setenforce 0 ##设置SELinux 成为permissive模式
##setenforce 1 设置SELinux 成为enforcing模式
2、修改配置文件需要重启机器:
修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled
重启机器即可

 

还有参考另外一文章:

http://www.tuicool.com/articles/ieQbuu

CentOS 6.5搭建Apache整合SVN 1.8.5服务器(多版本库权限配置)

1. gcc gcc-c++安装
yum install gcc gcc-c++
2.将Subversion和依赖安装包上传到CentOS服务器
3.依赖包的安装
tar zxvf apr-1.5.0.tar.gz
tar zxvf libtool-2.2.4.tar.gz
tar zxvf apr-util-1.5.3.tar.gz
cd apr-1.5.0
./configure --prefix=/usr/local/apr
make
make install
cd libtool-2.2.4
./configure --prefix=/usr/local/libtool
make
make install
cd apr-util-1.5.3
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
make
make install
tar zxvf pcre-8.33.tar.gz
tar zxvf httpd-2.4.7.tar.gz
cd pcre-8.33
./configure --prefix=/usr/local/pcre
make
make install
cd httpd-2.4.7
./configure --prefix=/usr/local/apache --enable-so --enable-dav --enable-dav-fs --enable-mnaintainet-mode --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
make
make install
tar xzvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure --prefix=/usr/local/zlib
make
make install
tar zxvf sqlite-autoconf-3080100.tar.gz
tar zxvf subversion-1.8.5.tar.gz
cd sqlite-autoconf-3080100
./configure --prefix=/usr/local/sqlite
make
make install
cd subversion-1.8.5
./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/apache/bin/apxs --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-sqlite=/usr/local/sqlite --enable-maintainer-mode --with-zlib=/usr/local/zlib
make
make install
==================================================================================
4.Apache和SVN命令环境设置
vi /etc/profile
PATH=/usr/local/apache/bin:$PATH
PATH=/usr/local/subversion/bin:$PATH
退出VI
source /etc/profile
==================================================================================
5.Apache配置
so文件复制
cp /usr/local/subversion/libexec/mod_authz_svn.so /usr/local/apache/modules/mod_authz_svn.so
cp /usr/local/subversion/libexec/mod_dav_svn.so /usr/local/apache/modules/mod_dav_svn.so
httpd.conf配置文件修改
vi /usr/local/apache/conf/httpd.conf
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
#svn
<Location /svn>
DAV svn
SVNParentPath /usr/svn
AuthType Basic
AuthName "Subversion repository"
#密码存储文件
AuthUserFile /usr/svn/auth.conf
Require valid-user
#用户访问目录的权限文件
AuthzSVNAccessFile /usr/svn/access.conf
</Location>
==================================================================================
6.SVN配置
mkdir /usr/svn
#创建版本库
svnadmin create /usr/svn/repos
#添加用户并设置密码:
htpasswd -c /usr/local/subversion/auth.conf test1
#输入两次密码
htpasswd /usr/local/subversion/auth.conf test2
#输入两次密码
#SVN用户访问目录权限配置文件
touch /usr/local/subversion/access.conf
vi /usr/local/subversion/access.conf
#用户组设置
[groups]
g1 = test1
g2 = test2
#版本库1,组1为读写权限,组2为只读
[repos1:/]
@g1 = rw
@g2 = r
* =
#版本库1下的mysvn文件夹组1为只读权限
[repos1:/mysvn]
@g1 = r
#版本库2
[repos2:/]
@g1 = rw
@g2 = rw
* =
#版本库3
[repos3:/]
@g1 = rw
@g2 = rw
#SVNSERVE.CONF配置文件修改
anon-access = none
auth-access = write
password-db = /usr/svn/auth.conf
authz-db = /usr/svn/access.conf
为SVN版本库文件添加读写权限
chmod -R 777 /usr/svn
启动SVN
svnserve -d -r /usr/svn --config-file /usr/svn/svnserve.conf
启动APACHE
/usr/local/apache/bin/apachectl start
==================================================================================
7.防火墙配置
iptables -P OUTPUT ACCEPT #默认策略
iptables -P FORWARD DROP #默认策略
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 3690 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT #允许已建和相关的连接
iptables -P INPUT DROP #默认策略
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT #允许已建和相关的连接
/etc/init.d/iptables save#保存iptables配置。
==================================================================================
8.关闭selinux
vi /etc/sysconfig/selinux
SELINUX=DISABLED
==================================================================================
客户端访问:
版本库1:http://ip/svn/repos1
版本库2:http://ip/svn/repos2
版本库3:http://ip/svn/repos3

  

CentOS6.5 yum安装 apache+svn安装配置的更多相关文章

  1. 配置LANMP环境(6)-- 安装APACHE与PHP配置

    一.安装 Apache 2.4 安装:默认安装2.4版本 yum install httpd 修改配置 vim /etc/httpd/conf/httpd.conf 42行80端口改为 8080查看行 ...

  2. Linux 通过编译安装apache服务以及配置

    Linux 编译安装apache服务 一.安装 1.通过编译安装,首先需要下载源代码安装包 apache下载链接:http://httpd.apache.org/download.cgi 2.解开源代 ...

  3. redmine安装及SVN(https)配置

    一键安装redmine https://blog.csdn.net/qq_26898315/article/details/50233483 配置SVN(引用: https://blog.csdn.n ...

  4. 下载文件时-修改文件名字 Redis在Windows中安装方法 SVN安装和使用(简单版) WinForm-SQL查询避免UI卡死 Asp.Net MVC Https设置

    下载文件时-修改文件名字   1后台代码 /// <summary> /// 文件下载2 /// </summary> /// <param name="Fil ...

  5. mariaDB的安装 apache的安装

    1.mariaDB的安装: 下载安装包: wget -c https://downloads.mariadb.com/MariaDB/mariadb-10.3.6/bintar-linux-glibc ...

  6. CentOS6.5 - yum对Mysql的安装与配置

    一.mysql的安装 1.查看是否安装mysql [root@localhost ~]# rpm -qa | grep mysql 如果有进行卸载(以下三种方式选一种即可): -.el6.x86_64 ...

  7. 03 编译安装apache的简易配置

    1.监听端口,默认为80,在主配置文件 /etc/httpd24/httpd.conf中可以更改 2.持久连接 Include /etc/httpd24/extra/httpd-default.con ...

  8. LINUX+Vmware+SVN的配置和安装

    LINUX+Vmware+SVN的配置和安装 验证SVN安装了没有 svnserve --version 查看CentOS自带JDK是否已安装. ◆输入:yum list installed |gre ...

  9. Linux下apache+phppgadmin安装配置

    1.安装pg 安装PostgreSQL数据库 修改pg_hba.conf配置文件,使得数据库可以通过外部访问. 具体可以配置为: # TYPE DATABASE USER ADDRESS METHOD ...

随机推荐

  1. IOS开发-几种截屏方法

    IOS开发-几种截屏方法 1.        UIGraphicsBeginImageContextWithOptions(pageView.page.bounds.size, YES, zoomSc ...

  2. magento -- 添加新产品时状态默认为激活,库存状态默认为有库存

    添加新产品时状态默认为激活 打开文件/app/code/core/Mage/Catalog/Model/Product/Status.php,注释掉“Please Select” /** * Retr ...

  3. C语言--- 字符串数组 、 预处理器和预处理指令 、 多文件编程 、 结构体

    1 输入一个姓名,判断是否是五虎上将. 1.1 问题 本案例需要使用交互的方式判断:用户从控制台输入一个名字,由程序判断该名字是否在五虎上将的名单中.五虎上将的名单是:GuanYu.ZhangFei. ...

  4. Netty ChannelOption 解释

    Name Associated setter method "writeBufferHighWaterMark" 默认 64 * 1024(用法未知) "writeBuf ...

  5. 简明python教程 --C++程序员的视角(九):函数式编程、特殊类方法、测试及其他

    函数式编程 Lambda exec,eval和assert语句,repr函数   lambda语句 用来创建简短的单行匿名函数 print_assign = lambda name, value: n ...

  6. Qt之QCheckBox

    简述 QCheckBox继承自QAbstractButton,它提供了一个带文本标签的复选框. QCheckBox(复选框)和QRadioButton(单选框)都是选项按钮.这是因为它们都可以在开(选 ...

  7. Linux虚拟主机通过程序实现二级域名绑定到子目录

    虚拟主机中CP控制台不支持将二级域名绑定到子目录的功能,用户可以通过程序实现将二级域名绑定到子目录. 有两种方法将二级域名绑定到子目录: 1. 配置.htaccess, 通过伪静态代码实现.具体实现方 ...

  8. jsonp跨域请求数据实例——手机号码查询

    前言 网上有很多开放的api,我们在本地通过ajax获取数据时,总会碰到一个问题,那就是跨域!如果不借助php等,仅仅通过js怎么解决跨域的问题呢?或许jsonp是个不错的选择. 知识准备 上篇博客 ...

  9. 优测优社区干货精选|老司机乱谈编辑器之神——vim

    文 / 腾讯 吴双 前言 优测小优 有话说: 腾讯优测只有应用测试大神?不不不,我们还有各种研发大牛! *** vim 是一种信仰,我自从2004年有了这个信仰,已经12个年头了.本文介绍了学习vim ...

  10. Kmeans算法的应用实例(Matlab版本)

    K-means是一种经典的聚类算法,是十大经典数据挖掘算法之一.K-means算法的基本思想是:以空间中k个点为中心进行聚类,对最靠近他们的对象归类.通过迭代的方法,逐次更新各聚类中心的值,直至得到最 ...