Ubuntu 源码方式安装Subversion+Apache2

使用到的安装包:

apr-1.5.1.tar.gz
apr-util-1.5.3.tar.gz
pcre-8.35.tar.gz
httpd-2.4.9.tar.bz2
subversion-1.8.9.tar.bz2
zlib-1.2.8.tar.gz

解压缩命令:

tar zxvf ***.tar.gz
tar jxvf ***.tar.bz2

1.先安装apr

cd apr-1.5.1
./configure --prefix=/usr/local/apr
make
sudo make install

2.安装apr-util

cd apr-util-1.5.3
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make
sudo make install

3.安装httpd

./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
make
make install

(安装httpd报错configure: error: pcre-config for libpcre not
found. PCRE is required and available from http://pcre.org/)

下载安装pcre:

cd pcre-8.35
./configure --prefix=/usr/local/pcre
make
make install

(安装pcre报错configure: error: You need a C++ compiler for C++
support)

sudo apt-get install build-essential

(Ubuntu默认并不提供C/C++的编译环境)或者:

yum install -y gcc gcc-c++

4.启动httpd

sudo /usr/local/apache/bin/apachectl start    
(stop|restart)

启动httpd报错:AH00558: httpd: Could not reliably
determine the server‘s fully qualified domain name

sudo
vi /usr/local/apache/conf/httpd.conf
  找到#ServerName
new.host.name:80,去掉前面的#,重启Apache

5.安装zlib-1.2.8

cd zlib-1.2.8/
./configure --prefix=/usr/local/zlib
make
sudo make install

6.安装svn

cd subversion-1.8.9/
./configure --prefix=/usr/local/svn --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-zlib=/usr/local/zlib --with-apxs=/usr/local/apache/bin/apxs --enable-maintainer-mode
make
sudo make install

报错:

configure: error: Subversion requires SQLite

在http://www.sqlite.org官网下载最新版的sqlite-amalgamation.zip,解压缩到subversion-1.8.9目录下新建的sqlite-amalgamation文件夹

unzip sqlite-amalgamation-3080403.zip

7.创建配置库根目录并赋权:

sudo adduser apache
sudo mkdir /usr/svn_root
sudo mkdir /usr/svn_root/config
sudo mkdir /usr/svn_root/repository
sudo chmod -R 770 /usr/svn_root/
sudo chown -R apache:apache /usr/svn_root/

8.配置apache的httpd文件

cp /usr/local/svn/libexec/mod_dav_svn.so /usr/local/apache/modules/
cp /usr/local/svn/libexec/mod_authz_svn.so /usr/local/apache/modules/
vi /usr/local/apache/conf/httpd.conf


a修改User和Group为apache账号启动apache
User apache
Group apache
b: 把下面两个行前面的#号去掉,注意行前不能有空格:
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
c: 在模块加载的最后添加下面两句:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
d: 在配置文件最末尾添加:
<Location /svn>
DAV svn
SVNListParentPath on
SVNParentPath "/usr/svn_root/repository"
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile "/usr/svn_root/config/passwd.conf"
AuthzSVNAccessFile "/usr/svn_root/config/authz.conf"
Require valid-user
</Location>

注释:

SVNParentPath------------------SVN的库根目录路径,可以在这下面创建多个版本库;

AuthUserFile-------------------用户帐号信息文件;

AuthzSVNAccessFile-------------权限控制文件

9.创建代码库,并增加svn用户,赋予权限

sudo /usr/local/svn/bin/svnadmin create /usr/svn_root/repository/repo1

sudo /usr/local/apache/bin/htpasswd /usr/svn_root/config/passwd.conf
wwl
New password:
Re-type new password:
Adding password for user
wwl
sudo /usr/local/apache/bin/htpasswd /usr/svn_root/config/passwd.conf
apache
sudo /usr/local/apache/bin/htpasswd /usr/svn_root/config/passwd.conf
test1
sudo /usr/local/apache/bin/htpasswd /usr/svn_root/config/passwd.conf
test2

第一次增加需要加-c参数(创建新的passwd.conf文件)

vi /usr/svn_root/config/authz.conf


[groups]
admin = wwl
CM = apache
test = test1,test2

[/]
* =
@admin = rw
@CM = r

[repo1:/]
* =
@CM = rw
@test = r

[repo1:/branches]
@test = rw
[repo1:/trunk]
test2 = rw


[groups]代表组定义:“组名 = 用户1,用户2...”;

[repo1:/]代表repo1配置库,repo1是配置库名称;

[repo1:/trunk]代表repo1配置库下/trunk目录;

@ 符号,则表示这是个群组权限设置;

@ admin = rw代表admin 这个组的所有用户有读写权限

test2 = rw代表test2这个用户对trunk有读写权限

PS:注意svn的权限继承关系

10.重启apache:

增加repo1代码库里面文件并上传后,重启apache会看到:

sudo ./usr/local/apache/bin/apachectl restart

题外话:

每次输svn、apache命令都要写绝对地址好烦,ln是你的好帮手

sudo ln /usr/local/svn/bin/* /usr/bin
sudo ln /usr/local/apache/bin/* /usr/bin

Ubuntu 源码方式安装Subversion+Apache2,布布扣,bubuko.com

时间: 2024-10-21 10:01:26

Ubuntu 源码方式安装Subversion+Apache2的相关文章

ubuntu下源码方式安装php5.4

一.安装前准备 下载php-5.4.13.tar.gz最新版本放到/user/src目录下 二.安装 因为在安装php过程中,会依赖安装很多库,为了不让你反复安装,建议按步骤操作 安装autoconf工具 sudo apt-get install autoconf 安装libxml2库 sudo apt-get install libxml2-dev 安装libbz2-dev sudo apt-get install libbz2-dev 安装curl sudo apt-get install

源码方式安装mysql5.5

mysql5.5开始,源码配置编译工具configure变成了cmake,所以先要去把cmake装上.并安装make,bison,cmake,gcc-c++,ncurses的包 去http://www.cmake.org/cmake/resources/software.html 下载cmake ./cmake-2.8.12.2-Linux-i386.sh  --prefix=/usr/local/ ln -s /usr/local/cmake-2.8.12.2-Linux-i386/bin/c

Linux下基于源码方式安装MySQL 5.6

MySQL为开源数据库,因此可以基于源码实现安装.基于源码安装有更多的灵活性.也就是说我们可以针对自己的硬件平台选用合适的编译器来优化编译后的二进制代码,根据不同的软件平台环境调整相关的编译参数,选择自身需要选择不同的安装组件,设定需要的字符集等等一些可以根据特定应用场景所作的各种调整.本文描述了如何在源码方式下安装MySQL. 1.安装环境及介质#安装环境SZDB:~ # cat /etc/issueWelcome to SUSE Linux Enterprise Server 10 SP3

Debian/Ubuntu源码编译安装PHP--支持FastCGI

从 php 5.3.3 起,就可直接使用 PHP-FPM ,不再需要打补丁了.此前已写过<Linux 从源码编译安装 PHP 5> 见 http://www.linuxidc.com/Linux/2011-10/45743.htm,但是以 mod_php 模块方式,而非 FastCGI 模式运行 php ,并不适用于 Lighttpd.Nginx.LiteSpeed ,而且当时对所有模块都采用编译安装也显得过于繁琐. 一.什么是 FastCGI.PHP-FPM.FastCGI ? CGI是一种

源码方式安装 lrzsz库

源码方式安装 lrzsz库:https://www.cnblogs.com/cocoajin/p/11731787.html 我们都知道安装了lrzsz工具的linux系统环境,在shell里可以非常方便的上传和下载linux里面的文件;xsehll中直接使用sz/rz命令即可在传输文件. 通常的安装方式: yum install lrzsz sudo apt-get install lrzsz 那么当无法用软件包方式安装时:可以直接使用源码方式安装: 1. 下载tar.gz的源码包:https

ubuntu 源码编译安装最新的vim 8.0

为什么要源码编译安装VIM? 因为我要安装ycm,ycm要求vim版本为8.0 教程步骤: 1, 核对系统版本 2, 删除系统自带的vim 3, 编译安装vim 4, 检验vim的安装 1,核对系统版本 [email protected]:~# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 14.04.5 LTS Release: 14.04 Codename: tr

centos 6.5源码编译安装subversion 1.8.10

一.简介 CentOS 6.5的yum源可以安装的SVN客户端版本太低了,1.6.11,所以需要升级到1.8.10,而官网有没有找到1.8.10的安装包,只能选择源码编译安装. 二.安装步骤 参考官网:http://svn.apache.org/repos/asf/subversion/trunk/INSTALL 源码下载:http://archive.apache.org/dist/subversion/ 源码编译subversion依赖许多别的工具,比如:apr.apr-util.libto

2-14 MySQL初步认识,及CentOS6.8环境,源码方式安装MySQL

什么是数据库: 存放数据的仓库RDBMS-->(Relational Database Management System) 关系型数据库管理系统DBMS--->(Database Managerment System) 数据库管理系统 数据库分类:1. 关系型数据库2. 非关系型数据库常用关系型数据库:Oracle,MySQL,MariaDB,SQL Server,Access,PostgreSQL,DB2,Informix,SybasePostgreSQL 自由的对象-关系数据库服务器(数

使用源码方式安装mysql-5.5.25

mysql的安装 对于某个软件的安装,一般有三种方式: 1.使用rpm来安装.这个软件包要以.rpm结尾才可以使用rpm包来安装. 2.使用通用二进制格式来安装.只不过使用这种安装方式该软件所支持的平台要对应起来才可. 3.使用源码方式来安装.这种方式可以来定制自己所需要的功能 在这里,本文使用源码方式来安装,linux系统平台为RHEL 5.8 编译安装MySQL-5.5 cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码