原文网址:http://www.cnblogs.com/pcchinadreamfly/archive/2012/11/24/2786046.html

前段时间在ubuntu 12.04lts上倒腾了一个svn服务器,安装和配置都是按照网上的一些资料来做的,不过一直没有使用过。这两天突然要使用了,才想起这茬来,于是使用tortoiseSVN连接之前配置的svn server,不过问题出来了。先说说我的安装与配置步骤:

ubuntu下SVN服务器安装配置 一、SVN安装
1.安装包
  $ sudo apt-get install subversion

2.添加svn管理用户及subversion组(其实这点我到现在也不明白为什么要这样做,仅仅是为了安全、管理方便还是什么)
  $ sudo adduser svnuser
  $ sudo addgroup subversion
  $ sudo addgroup svnuser subversion

3.创建项目目录

  $ sudo mkdir /home/svn
  $ cd /home/svn
  $ sudo mkdir fitness
  $ sudo chown -R root:subversion fitness
  $ sudo chmod -R g+rws fitness

4.创建SVN文件仓库
  $ sudo svnadmin create /home/svn/fitness

5.访问方式及项目导入(其实这步可以先不管):
  svn  co  http://路径(目录或文件的全路径) [本地目录全路径]  --username 用户名 --password 密码

  svn  co  svn://路径(目录或文件的全路径) [本地目录全路径]  --username 用户名 --password 密码

6.访问权限设置(在第4步执行成功后就会有这3个文件)
修改 /home/svn/fitness/conf目录下:
svnserve.conf 、passwd 、authz三个文件,行最前端不允许有空格
//--
编辑svnserve.conf文件,把如下两行取消注释
password-db = password
authz-db = authz

//补充说明
# [general]
anon-access = read
auth-access = write
password-db = passwd
其中 anon-access 和 auth-access 分别为匿名和有权限用户的权限,默认给匿名用户只读的权限,但如果想拒绝匿名用户的访问,只需把 read 改成 none 就能达到目的。

编辑authz如下(等号前为组,等号后为该组的用户,这个不需要在系统中添加)
[groups]
admin = test
[/]
@admin=rw
*=r
这里设置了三个用户mirze,test1,test2密码都是123456
其中mirze和test1属于admin组,有读和写的权限,test2属于test组只有读的权限

编辑passwd 如下:
[users]
test = 123456

7.启动SVN服务
  svnserve -d -r /home/svn
描述说明:
-d 表示svnserver以“守护”进程模式运行
-r 指定文件系统的根位置(版本库的根目录),这样客户端不用输入全路径(但如果用svnserve -d就需要给出全部的路径svn://192.168.12.118/home/svn/fitness),就可以访问版本库
如: svn://192.168.12.118/fitness

所有步骤均按照上面执行,但是当我用tortoiseSVN访问时却总是出现“authorization failed”,网上对这个问题也是众说纷纭,不过最后还是通过网络解决了。问题出在第6步修改authz部分,也就是将字体标注成红色字体的部分,在第4步中,我已经创建了fitness这个仓库,“[/]”(不含引号)这个命令的作用是将登陆的用户限制在仓库根目录下,但是用户不对,应该将"[/]"修改成"[fitness:/]",再次用tortoiseSVN访问的时候就不会出现authorization failed的情况了。

不过我使用的是test用户,是具有写入权限的,于是我试着添加一个文件,不过出现了“subversion reported an error: Can't open file '/home/svn/fitness/db/txn-current-lock': Permission denied”,在ubuntu中找到该文件后,将文件操作类型改成了755,但是还是不能添加,不过其他功能是没有问题。本随笔暂时到这里,在这里请知道怎么解决这个error的大神给点提示。

【转】在ubuntu环境下搭建svn server遇到的一些问题的更多相关文章

  1. Windows和Linux环境下搭建SVN服务器

    --------------------------Windows下搭建SVN服务器----------------------------- 一.安装SVN服务端 软件包Setup-Subversi ...

  2. window环境下搭建SVN服务器

    <span style="font-family: Arial; rgb(255, 255, 255);">第一步:准备工具:</span> 1.SVN服务 ...

  3. linux系统Centos环境下搭建SVN服务器及权限配置

    linux系统Centos环境下如何搭建SVN服务器以及svnserve.conf.authz.passwd配置文件详细介绍   至于svn的概念,这里就不做详细阐述了,可以自行百度.简单来讲就是一个 ...

  4. LNMP环境下搭建SVN服务

    最近自己买了个服务器,试着在上面搭建了LNMP环境,因为以前在本地用MAMP Pro搭建过LAMP环境,所以基本上还算是轻车熟路,第一次搭建LNMP,使用的是一键安装,过程是顺利的,后来在使用过程中遇 ...

  5. Windows环境下搭建SVN服务器

    使用 VisualSVN Server来实现主要的 SVN功能则要比使用原始的 SVN和Apache相配合来实现源代码的 SVN管理简单的多,下面就看看详细的说明. VisualSVN Server的 ...

  6. 【SVN】centos环境下搭建SVN服务器

    1.安装SVN,有些linux发行版自带SVN,可以用下面方法检测是否安装SVN. svn --version 如果 Subversion 客户端没有安装,命令将报告svn命令找不到的错误. 我们可以 ...

  7. Centos7.1环境下搭建SVN

    环境准备: 系统 配置 IP Centos7.1 1核2G+60GB硬盘 10.10.28.204 1.安装 sudo yum install subversion 查看版本 svnserve –-v ...

  8. 在Ubuntu环境下搭建esp32开发环境

    第一步:下载必要的库文件   sudo apt-get install git make gcc libncurses5-dev flex bison gperf python-serial     ...

  9. ubuntu环境下搭建Hadoop集群中必须需要注意的问题

    博主安装的hadoop是3.1.3这里是按照厦门大学那个博客安装的,在安装与启动过程中,费了不少事,特此记录一下问题. 安装的连接: 安装环境:http://dblab.xmu.edu.cn/blog ...

随机推荐

  1. 安卓Intent(显式)

    1.Intent是Android程序中各组件之间交互的重要方式,一般可用于启动活动.启动服务.以及发送广播等场景,这里先对活动进行说明Intent的一些作用. 2.Intent的用法大致可分为,显式I ...

  2. Js的History对象

    History回顾 window.history表示window对象的历史记录 window.history的简单回顾 历史记录中前进/后退,移动到指定历史记录点 window.history.bac ...

  3. ubuntu15.10升级时校验和不符的解决方法

    博客: 安卓之家 微博: 追风917 CSDN: 蒋朋的家 简书: 追风917 博客园: 追风917 # 错误 # 原因分析 进入/var/lib/apt/lists/partial看下吧: 看到了吧 ...

  4. 尽量不要用select into 复制表

    select into 复制表会带来灾难后果,因为只是复制了一个外壳,就像克隆人,有躯体没意识,像原表的主键 外键 约束 触发器 索引都不会被复制过来, 创建一个表:CREATE TABLE [dbo ...

  5. DevExpress XtraGrid RepositoryItemCheckEdit 复选框多选的解决方法

    1. RepositoryItemCheckEdit默认有三种状态,选中状态.未选中状态和半选中状态(半选中状态通常用在TreeList中如果父节点下的子节点有选中的有未选中的,则父节点状态为半选中状 ...

  6. 反射(学习整理)----Class类和加载器ClassLoader类的整理

    1.学习反射的时整理的笔记!Class类和ClassLoader类的简单介绍 反射机制中的Class Class内部到底有什么呢?看下图! 代码: Class cls=Person.class; .C ...

  7. 神经网络中的XOR问题

    XOR问题 解决办法: 网络如图 其中激活函数 ReLU,令 即可解决XOR问题.

  8. sass用法

    可能刚开始我们学习前端的时候都习惯用html+css.来做网页,但是我们发现css有很多重复的代码或者是你要改里面的图片或者文字还有去诶个的找很麻烦,所以我们就用sass来简化它. 首先我们需要安装一 ...

  9. 如何更有效学习php开源项目的源码

    一.先把源代码安装起来,结合它的文档和手册,熟悉其功能和它的应用方式. 二.浏览源代码的目录结构,了解各个目录的功能. 三.经过以上两步后相信你对这个开源的产品有了一个初步的了解了,那现在就开始分析它 ...

  10. Android中UI线程与后台线程交互设计的5种方法

    我想关于这个话题已经有很多前辈讨论过了.今天算是一次学习总结吧. 在android的设计思想中,为了确保用户顺滑的操作体验.一 些耗时的任务不能够在UI线程中运行,像访问网络就属于这类任务.因此我们必 ...