• 【转】在ubuntu环境下搭建svn server遇到的一些问题


    原文网址: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的大神给点提示。

  • 相关阅读:
    WinForm窗体传值 总结
    SQLServer遍历数据库所有表及统计表数据总数
    GridView合并行代码
    日期转换成字符串
    flex与js交互浅析
    九,query task
    八,graphics
    十,Find and Identity
    转移批令
    db dw dd 和 dup
  • 原文地址:https://www.cnblogs.com/wi100sh/p/5230155.html
Copyright © 2020-2023  润新知