您的位置:首页 > 运维架构 > Apache

Linux上安装subversion手记(包括apache apr, berkeley DB)

2013-11-14 16:08 393 查看
(一)Linux上安装subversion手记(包括apache apr, berkeley DB)
由于工作需要,所以试着在SUSE上安装了以把subversion,前后也搞了差不多5个小时,回头一看,要是熟练的话也就2个小时的事情,所以就把经过写出来,给也需要在linux上安装subversion的朋友一点借签。

因为我用的都是源码包编译安装,所以应该对于具体的Linux发行版本没有过多要求。也就是说我是在SUSE下安装,但是如果把这个过程放到redhat或者fedora或者ubuntu上应该也是完全可行的。

好了,不说废话了,进入主题。

首先下载berkeley DB

地址:http://download.oracle.com/berkeley-db/db-4.6.18.tar.gz
下这个因为subversion内部使用的管理数据的功能会需要用到。

但是后来经过猜测,应该不装也没问题,因为subversion有两种关于这个的模式,不装的话可以用另外种,subversion的解释如下

The following repository back-end (FS) modules are available:

* fs_base : Module for working with a Berkeley DB repository.

* fs_fs : Module for working with a plain file (FSFS) repository.

但是为了保险我还是装了,具体命令行如下

tar zxvf db-4.6.18.tar.tar

cd db-4.6.18/build_unix/

../dist/configure --prefix=/usr/local/bdb

make

make install

接着安装apr和apr-util

这是个apache的project,全名是Apache Portable Runtime

现在最新的版本是1.2.12,不过貌似那个版本是给apache2.6用的,而我们的apache是2.0.x的,所以我用的是0.9.17的。这个要注意下,版本不符合可能安装会有问题,下面是下载地址

http://apr.apache.org/

先装apr, 如果下的gz包可以用

tar zxvf apr-0.9.17.tar.tar 解压

如果是bz2包可以用

tar xfj apr-0.9.17.tar.tar

然后

cd apr-0.9.17/

./configure

make

make install

这里configure的时候不指定路径的话默认是安装到/usr/local/下

然后安装apr-util

解压同apr

然后

cd apr-util-0.9.15/

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/ --with-berkeley-db=/usr/local/bdb (这步要把berkeley数据库一起编译进去,否则berkeley就白装了)

make

make install

安装subversion

首先,当然还是下载

Subversion源码包:http://subversion.tigris.org/downloads/subversion-1.4.3.tar.bz2

依赖包:http://subversion.tigris.org/downloads/subversion-deps-1.4.3.tar.bz2

tar xfj subversion-1.4.3.tar.bz2

tar xfj subversion-deps-1.4.3.tar.bz2

./configure --with-apxs=/opt/oss/sbin/apxs --with-apr=/usr/local/apr/bin/apr-config --with-apr-util=/usr/local/apr-util/bin/apu-config

make

make install

装完后用svnadmin –version查看下是否有信息,有的话说明安装成功

4.配置

首先创建一个repository

svnadmin create /home/svn/projectname

然后把/home/svn/projectname/conf/passwd, /home/svn/projectname/conf/svnserve.conf, /home/svn/projectname/hooks/control-file里的参数配置一下

passwd里放的是每个用户名和密码

svnserve.conf里放的是关于匿名和非匿名用户的权限

control-file里放的是具体到每个文件夹,每个用户的读写权限
再来要打开subversion的端口,subversion默认端口是3690

su - root -c "svnserve -d -r /home/svn/projectname"

命令执行后可以用

ps -ed | grep svnserve

查看svnserve服务是否已经启动

还可以用

netstat -ant | grep 3690

查看3690端口是否已经被监听

5.导入资源
首先把当前路径设置到放代码的路径,比如说
/home/htdocs/projectname
然后执行
svn import svn://localhost/projectname -m "projectname"
等命令行重新出现后就完成了。

6.Check out
这步没啥好说的了,就是从客户端把代码check out了。注意check out的时候选的资源名就是第5步中svn://localhost/projectname这个地址里的projectname。
原文地址:http://blog.csdn.net/mynamesucks/article/details/1913835

(二)errorwhileloadingsharedlibrariescannotrestoresegmentprotafterrelocPermissiondenied

error while loading shared libraries: cannot restore segment prot after reloc: Permission denied错误原因在于selinux禁用了访问此共享库

解决办法: 关闭selinux

1、编辑/etc/selinux/config文件,找到SELINUX=enforcing,改为SELINUX=disabled

2、编辑/etc/sysconfig/selinux文件,找到SELINUX=enforcing,改为SELINUX=disabled

3、重启电脑
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: