centos 6.4安装svn+httpd

安装参考文档http://wiki.centos.org/HowTos/Subversion?highlight=%28subversion%29

一、环境

系统:centos6.4x64最小化安装

IP:192.168.3.73

二、安装

配置epel源

[[email protected] ~]# rpm  -ivh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
Retrieving http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
warning: /var/tmp/rpm-tmp.soEIXi: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Preparing...                ########################################### [100%]
   1:epel-release           ########################################### [100%]
[[email protected] ~]# sed -i ‘[email protected]#[email protected]@‘ /etc/yum.repos.d/epel.repo
[[email protected] ~]# sed -i ‘[email protected]@#[email protected]‘ /etc/yum.repos.d/epel.repo

同步时间

[[email protected] ~]# yum install ntpdate -y
[[email protected] ~]# ntpdate asia.pool.ntp.org
26 May 10:54:54 ntpdate[1490]: step time server 202.73.36.32 offset 142.398912 sec
[[email protected] ~]# hwclock -w
[[email protected] ~]# echo "*/10 * * * * /usr/sbin/ntpdate asia.pool.ntp.org &>/dev/null" >>/var/spool/cron/root

安装相关软件包

[[email protected] ~]# yum install httpd httpd-devel mod_dav_svn subversion mod_ssl -y

#查看安装后的结果
[[email protected] ~]# ls /etc/httpd/modules/ |grep svn
mod_authz_svn.so
mod_dav_svn.so
[[email protected] ~]# svn --version |grep version
svn, version 1.6.11 (r934486)

到此svn的安装已完成

三、配置svn服务器

创建一个用来存储svn文件

[[email protected] ~]# mkdir -p /data/svn

#新建一个版本库
[[email protected] /]# svnadmin create /data/svn
[[email protected] data]# cd /data/svn/
[[[email protected] svn]# ls /svn/
conf  db  format  hooks  locks  README.txt
[[email protected] svn]# chown -R apache.apache /data/svn

配置subversion.conf

[[email protected] svn]# egrep -v "^#|^$"  /etc/httpd/conf.d/subversion.conf 
LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so
<Location /svn-test>
    DAV svn
    SVNPath /data/svn
    SVNListParentPath on
      AuthType Basic
      AuthName "svn server"
      AuthUserFile /data/passwdfile
      AuthzSVNAccessFile /data/accessfile
      Require valid-user
</Location>

添加用户名和密码

[[email protected] ~]# htpasswd -c /data/passwdfile weyee        #这里的-c选项是清楚所有
New password: 
Re-type new password:                                  #密码weyee2014
Adding password for user weyee
[[email protected] ~]# htpasswd  /data/passwdfile ceshi          #添加另外的svn用户,密码weyee2014
New password: 
Re-type new password: 
Adding password for user test
[[email protected] ~]# cat /svn/passwdfile 
weyee:uKp4.Z6yOTdac
test:ZDfPcwIOd1Gp2

#启动httpd服务
[[email protected] ~]# /etc/init.d/httpd start
Starting httpd: httpd: apr_sockaddr_info_get() failed for svn
httpd: Could not reliably determine the server‘s fully qualified domain name, using 127.0.0.1 for ServerName
                                                           [  OK  ]
[[email protected] ~]# netstat -anpt |grep httpd
tcp        0      0 :::80                       :::*                        LISTEN      23162/httpd         
tcp        0      0 :::443                      :::*                        LISTEN      23162/httpd

四、创建权限控制文件

[[email protected] svn]# pwd
/data/svn
[[email protected] svn]# ll
total 28
drwxr-xr-x 2 apache apache 4096 May 26 13:46 conf
drwxr-sr-x 6 apache apache 4096 May 26 13:46 db
-r--r--r-- 1 apache apache    2 May 26 13:46 format
drwxr-xr-x 2 apache apache 4096 May 26 13:46 hooks
drwxr-xr-x 2 apache apache 4096 May 26 13:46 locks
-rw-r--r-- 1 root   root     40 May 26 13:50 passwdfile
-rw-r--r-- 1 apache apache  229 May 26 13:46 README.txt
[[email protected] svn]# cat accessfile 
[/]
*=rw

[groups]
dev=weyee
test=ceshi

[svn-test:/]
@test=r
@dev=rw

[repos:/test]
@test=rw
*=

启动svn服务器

[[email protected] svn]# svnserve -d -r /data
[[email protected] svn]# netstat -anpt |grep svn
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN      23337/svnserve      
[[email protected] svn]# ps aux|grep svn |grep -v grep
root     23337  0.0  0.0 156908   748 ?        Ss   11:37   0:00 svnserve -d -r /data

测试结果,使用weyee用户

创建一个文件6.txt,并上传

我们将weyee用户对svn-test的写权限去掉

[[email protected] data]# cat accessfile 
[/]
*=r

[groups]
dev=weyee
test=ceshi

[svn-test:/]
@test=r
@dev=r

重新创建一个7.txt,并提交

恢复写权限,继续提交

[[email protected] data]# cat accessfile 
[/]
*=r

[groups]
dev=weyee
test=ceshi

[svn-test:/]
@test=r
@dev=rw

怎么创建其他的代码库呢?

[email protected] ~]# cd /tmp
[[email protected] tmp]# mkdir mytestproj
[[email protected] tmp]# cd mytestproj
[[email protected] mytestproj]# mkdir configurations options main
[[email protected] mytestproj]# vim configurations/testconf1.cfg
[[email protected] mytestproj]# vim options/testopts1.cfg
[[email protected] mytestproj]# vim main/mainfile1.cfg
[[email protected] mytestproj]# svn import /tmp/mytestproj/ file:///data/svn/mytestproj -m "initial repos in mytestproj"
Adding         /tmp/mytestproj/main
Adding         /tmp/mytestproj/main/mainfile1.cfg
Adding         /tmp/mytestproj/configurations
Adding         /tmp/mytestproj/configurations/testconf1.cfg
Adding         /tmp/mytestproj/options
Adding         /tmp/mytestproj/options/testopts1.cfg

Committed revision 9.
#检出刚才创建的代码库
[[email protected] ~]# svn co http://192.168.3.73/svn-test/mytestproj
Authentication realm: <http://192.168.3.73:80> svn server
Password for ‘root‘: 
Authentication realm: <http://192.168.3.73:80> svn server
Username: weyee
Password for ‘weyee‘: 

-----------------------------------------------------------------------
ATTENTION!  Your password for authentication realm:

   <http://192.168.3.73:80> svn server

can only be stored to disk unencrypted!  You are advised to configure
your system so that Subversion can store passwords encrypted, if
possible.  See the documentation for details.

You can avoid future appearances of this warning by setting the value
of the ‘store-plaintext-passwords‘ option to either ‘yes‘ or ‘no‘ in
‘/root/.subversion/servers‘.
-----------------------------------------------------------------------
Store password unencrypted (yes/no)? yes
A    mytestproj/main
A    mytestproj/main/mainfile1.cfg
A    mytestproj/configurations
A    mytestproj/configurations/testconf1.cfg
A    mytestproj/options
A    mytestproj/options/testopts1.cfg
Checked out revision 9.

权限控制

[[email protected] data]# pwd
/data
[[email protected] data]# cat accessfile
[/]
*=r

[groups]
dev=weyee
test=ceshi

[svn-test:/]
@test=r
@dev=r

[svn-test:/mytestproj]
@dev=r
@test=rw

从权限上看,应该是weyee对mytestproj只有读取权限,ceshi有读写权限

测试,新建一个qq.txt使用weyee账号提交

现在我们更换用户提交使用ceshi

到此基于httpd的svn基本是完成了

更多的请参考http://kaibinyuan.blog.51cto.com/7304008/1609488

时间: 2024-10-26 03:17:29

centos 6.4安装svn+httpd的相关文章

yum 安装svn+httpd

题记:好久以前装了一次,然后歇了一段时间又需要使用,发现自己忘了差不多,遂有此文. 一 安装说明 1.1 环境 [[email protected] ~]# lsb_release -a LSB Version:    :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch

CentOS 5.5安装SVN(Subversion)

检查已安装版本 #检查是否安装了低版本的SVN[[email protected] /]# rpm -qa subversion #卸载旧版本SVN[[email protected] modules]# yum remove subversion #wget http://mirror.centos.org/centos/5/os/i386/CentOS/subversion-javahl-1.6.11-12.el5_10.i386.rpm # yum install subversion-j

CentOS下编译安装Apache(httpd)

官网下载最新版本的apache, apr, apr-util http://httpd.apache.org/download.cgi#apache24 http://apr.apache.org/download.cgi VirtualBox下CenOS6.4 apr-1.5.2.tar.gz apr-util-1.5.4.tar.gz httpd-2.4.16.tar.gz 1 安装gcc yum install gcc 2 安装apr ./configure make && make

Centos 6.4安装配置apache平台的svn服务器

一.安装apache.subversion服务 #yum install httpd subversion subversion-devel mod_dav_svn -y 二.配置apache服务器 # sed '{/^$/d;/#/d}' /etc/httpd/conf/httpd.conf ServerTokens OS ServerRoot "/etc/httpd" PidFile run/httpd.pid Timeout 60 KeepAlive Off MaxKeepAli

CentOS(Linux) - SVN使用笔记(一) - 安装SVN过程及开启和关闭svn服务指令

1.安装: yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql yum remove subversion 删除旧版SVN 2.验证安装: svnserve --version 3.启动SVN服务: svnserve -d -r /usr/svn //svn默认监听3690端口 //或者指定3391等其他端口号启动服务器 svnserve -d -r /usr/svn --listen-port 3391 4.重

CentOS 7.2 安装Subversion(SVN)

CentOS 7.2 安装Subversion(SVN) subversion 简介 Subversion是一个自由开源的版本控制系统.在Subversion管理下,文件和目录可以超越时空. Subversion将文件存放在中心版本库里,这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况,这样就可以借此将数据恢复到以前的版本,并可以查看数据的更改细节.正因为如此,许多人将版本控制系统当作一种神奇的"时间机器". subversion 官网:http://

centos 安装 svn

在工作中,为了提高工作效率,我们都会用版本控制软件来对项目经行管理,比如说svn.git等等.接下来以svbversion为例来谈谈CentOS中安装svn和部署项目的过程 一.安装svn服务端,并使用匿名用户访问和管理svn项目1.首先安装svn服务端 yum install subversion -y 2.设置版本库的目录,默认监听端口号3690svnserve -d -r /usr/svndata 3.创建svn项目svnadmin create /usr/svndata/gztest 4

CentOS源码安装搭建LNMP全过程(包括nginx,mysql,php,svn)

服务器环境为:CentOS6.5 64位 目标:搭建LNMP(Linux + Nginx + MySQL + PHP +SVN),其中svn是用来代替ftp,方便开发中调试同步代码 相关目录:所有软件都安装到/www/目录下,在www目录下新建web文件夹作为网站的根路径,www目录下新建wwwsvn作为svn的仓库地址./www/software用来放nginx,mysql,php的安装包和源码.nginx运行分组和账户www:www 一,安装前的准备 yum -y install ntp m

Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因

原文:Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因 今天试了下在虚拟机上利用CentOS系统的yum命令安装好了httpd(apache2.4.6),然后在windows系统下访问此虚拟机的ip地址,却访问不了. 因为前段时间有知道过iptable的限制,所以在想是不是因为iptable限制了80端口呢! 所以在网上找了下iptable的命令,并且把tcp的80端口设置成允许任何IP都可以访问: iptables -I INPUT -p TCP