aliyun CentOS6.5 上 svn 安装笔记
为了方便管理自己的一些学习资料、总结等,在CentOS6.5上安装SVN,记录过程如下:
1.1 安装方式 独立服务器 fsfs
SVN服务器有2种运行方式:独立安装、SVN+Apache。独立安装访问方式:ftp://+路径 ,另外一种可以使用http://+路径访问
SVN存储版本数据也有2种方式:BDB、FSFS。因为BDB方式在服务器中断时,有可能锁住数据所以还是FSFS方式更安全一点,本次安装为FSFS方式。
1.2 安装简述
1. 下载安装包
subversion-1.6.17.tar.gz subversion-deps-1.6.17.tar.gz expat-2.1.0.tar.gz
2. 安装openssl-devel
# rpm -qa | grep openssl
openssl-1.0.1e-30.el6_6.5.x86_64
# yum install openssl-devel -y
查看安装位置
# rpm -ql openssl
/usr/share/doc/openssl-1.0.1e
3. 安装expat
tar –zxvf expat-2.1.0.tar.gz
./configure
make
make install
系统默认自带了expat但在编译svn时仍报以后错误,安装该包后正常编译(不需要卸载原来的expat)
configure: error: no XML parser was found: expat or libxml 2.x required
3. 安装svn
mkdir -p /opt/soft/svn/
tar -zxvf subversion-1.6.17.tar.gz
tar -zxvf subversion-deps-1.6.17.tar.gz
cd subversion-1.6.17
./configure --prefix=/opt/soft/svn/ --with-openssl=/usr/share/doc/openssl-1.0.1e --without-berkeley-db
make
make install
1.3 配置 SVN
根目录 /svndata
应用目录
apps
|
-----app1
| |
| -----app1.1
------app2
|
------share
用户 admin、user1、user2, 其中admin 可以读写 apps及其子目录,
user1可以读写app1及其子目录,可以看到share但不能写,看不到app2
user2可以读写app2及其子目录,可以看到share但不能写,看不到app1
建立数据仓库
mkdir /svndata/summary
svnadmin create /svndata/summary
修改版本配置库文件
vi /svndata/summary/conf/svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = summary
对用户配置文件的修改是立即生效的,不必重启svn。
设置账户与密码
vi /svndata/summary/conf/passwd
[users]
admin = admin
user1 = user1
user2 = user2
设置权限
vi /svndata/summary/conf/authz
[groups]
g_admin = admin
g_app1 = user1
g_app2 = user2
[summary:/]
@g_admin = rw
* = r
[summary:/apps]
@g_admin = rw
* = r
[summary:/apps/app1]
@g_admin = rw
@g_app1 = rw
* =
[summary:/apps/app2]
@g_admin = rw
@g_app2 = rw
* =
[summary:/apps/share]
* = r
cd /tmp
svn checkout svn://123.57.***.***/summary
cd summary/
mkdir -p apps/app1/app1.1
mkdir apps/app2
mkdir apps/share
svn add apps/
A apps
A apps/share
A apps/app2
A apps/app1
A apps/app1/app1.1
到此已完成snv的配置以及目录的初始化工作。
启动
svnserve -d -r /svndata/summary/
查看进程
# netstat -tunlp | grep svn
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 30662/svnserve
1.4 可能遇到的问题
1.4.1 eclipse连接不上svn
如果遇到Eclipse下使用SVN报Malformed network data的问题,使用以下方法解决
help-->Eclipse Marketplace-->Popular-->找到subclipse,点击install,然后重新安装。
如果输入保存密码,svn的密码会记录在电脑中,你在电脑中再次从svn中导出导入中将不再输入密码,要想重新输入密码,删除以下文件夹中的文件即可。
win7 :C:\Users\fei\AppData\Roaming\Subversion\auth\svn.simple
XP :C:\Documents
and Settings\camelot\Application Data\Subversion\auth\svn.simple
如果不行的话,可以在服务器上修改用户密码,再次连接时自然会让你输入。
1.4.2 svn找不到项目
找不到项目一般是权限出了问题,可参考以下例子重新配置权限。
该权限配置比较简单且100%正确,可在此基础上再进行约束。
# vi authz
[groups]
[/]
tanpf = rw
[/P1]
fang = rw
[/P2]
fang = rw
[/P3]
fang = rw
[/dgo1]
fang = rw
# vi passwd
[users]
tanpf = tanpf
fang = fang
“/”为svn的根目录,P1、P2、P3等为根目录下的子目录,tanpf用户可读写根目录下所有文件,而fang用户只可以读取相关的子目录。
aliyun CentOS6.5 上 svn 安装笔记的更多相关文章
- centos6.8上yum安装zabbix3.2
centos6.8上yum安装zabbix3.2 zabbix3.2安装文档:https://www.zabbix.com/documentation/3.2/manual/installation/ ...
- SVN安装笔记
1.先去以下网址去下载服务器端与客户端的SVN 2.服务端SVN的安装 点击next 点击next 再点击next 点击next 点击install 点击Finish,这样服务器端的SVN就安装好了, ...
- 自己编写的:centos6.6上编译安装apache2.4+php5.6+mysql5.6【亲自】
在centos6.6上安装apache2.4+php5.6+mysql5.6 关于wget的安装 将之前装系统的.iso文件挂载到光驱 由于我在/home/jinnan/下建立了一个cdrom文件夹 ...
- centos7上svn安装
svn安装 yum install subversion 查看svn安装的版本 svnserve --version新建svn目录 mkdir /opt/svn 建立版本库目录 mkdir ...
- 在centos6,7 上编译安装内核
小编以前写过一篇软件的源码编译安装,今天小编再给大家带来一篇内核的编译安装. 今天,就以centos7 编译安装最新版本4.13.2 内核为例,给大家详解.编译安装之前,检查一下自己的磁盘空间 ...
- 【MYSQL安装】mysql 5.6在centos6.4上的安装
1.卸载系统自带的mysql [root@zhangmeng ~]# rpm -qa |grep mysql mysql-libs--.el6_3.x86_64 [root@zhangmeng ~]# ...
- Centos6 hadoop2.6.0安装笔记
系统环境: linux:Centos6-64bit hadoop:hadoop2.6.0 jdk:1.6.45 集群方式安装 一台master,3台slave master 192.168.111.1 ...
- Centos6.8下SVN安装
1.yum -y install subversion svnserve --version 查看版本 2.@创建SVN仓库目录 mkdir -p /data/svn/repositories 3.@ ...
- centos6.9上mongdb安装
一.设置yum源 vi /etc/yum.repos.d/mongodb.repo [mongodb-org-3.2] name=MongoDB Repository baseurl=https:// ...
随机推荐
- Antenna Placement
Antenna Placement Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 7574 Accepted: 3762 Des ...
- Unity中实现List类型的自定义GUI(ReorderableList)
感谢韩同学提供的资源 Unity本身提供了float,int,vector3..等类型字段的gui接口,而对于集合类型一般要自己硬写. 官方提供了一个List的自定义GUI,但使用起来非常复杂 Uni ...
- Python学习笔记-Day1-Python基础
1.python诞生 关于Python的起源,吉多·范罗苏姆在1996年写到: 六 年前,在1989年12月,我在寻找一门“课余”编程项目来打发圣诞节前后的时间.我的办公室会关门,但我有一台家用电脑, ...
- JAVA基础知识之多线程——线程通信
传统的线程通信 Object提供了三个方法wait(), notify(), notifyAll()在线程之间进行通信,以此来解决线程间执行顺序等问题. wait():释放当前线程的同步监视控制器,并 ...
- spring Aop中aop:advisor 与 aop:aspect的区别
转载:http://blog.csdn.net/u011710466/article/details/52888277 在spring的配置中,会用到这两个标签.那么他们的区别是什么呢? ...
- (7)redis pipeline
redis是一个cs模式的tcp server,使用和http类似的请求响应协议.一个client可以通过一个socket连接发起多个请求命令.每个请求命令发出后client通常 会阻塞并等待redi ...
- pip安装使用详解
pip类似RedHat里面的yum,安装Python包非常方便.本节详细介绍pip的安装.以及使用方法. 1.pip下载安装 1.1 pip下载 1 # wget "https://py ...
- linux中的shell脚本编程
[1]shell脚本 1--- shell命令 2--- 控制语句(新的语法) (Shell命令的有序集合) [2]创建shell脚本文件 1--- 1.sh 2--- chmod 777 1.sh ...
- VC++检测当前网络状态
VC获得本机网络连接状态 转载:http://www.cppblog.com/wrhwww/archive/2010/12/02/135230.html //本机网络连接类型(成功) #define ...
- CentOS最小化安装后,增加GNOME桌面
背景:下载CentOS 7的安装包后,在虚拟机上安装. 上来就遇到一个问题:提示需要开启intel vt-x. 这个进入BIOS,在CPU的设置中开启即可. 然后怀着兴奋的心情,开始各种下一步的安装, ...