• CentOS 6.5系统上安装SVN服务器端的方法及步骤


    VN其实就是Subversion,分为服务器端和客户端。之前在网上搜了很多方法,都有各种问题,经过自己搜集整理以及实际尝试,总算有个比较靠谱的方法。本文主要介绍CentOS 6.5系统上安装SVN服务器端的方法及步骤。

    系统环境说明如下

             操作系统:        Centos6.5 x86-64

             SVN:             subversion-1.8.11

    1、检查是否安装了低版本的SVN

    rpm -qa | grep subversion

    如果已安装SVN,则会返回版本信息,如:subversion-1.6.11-9.el6_4.i686

    卸载旧版本SVN

    yum remove subversion

    2、安装SVN

    yum –y install subversion

    3、检查安装是否成功

    svnserve –version

    返回值:

    svnserve, version 1.8.11

             compiled Jul 23 2013, 21:32:09 on i686-pc-linux-gnu

    Copyright (C) 2013 The Apache Software Foundation.

    This software consists of contributions made by many people;

    see the NOTICE file for more information.

    Subversion is open source software, see http://subversion.apache.org/

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

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

    Cyrus SASL authentication is available.

    4、代码库创建

    mkdir -p /opt/svn/repositories

    svnadmin create /opt/svn/repositories

    执行上面的命令后,自动建立repositories库,查看/opt/svn/repositories 文件夹发现包含了conf,db,format,hooks,locks, README.txt等文件,说明一个SVN库建立完成。

    5、配置代码库

    进入上面生成的文件夹conf下,进行配置

    cd /opt/svn/repositories/conf

    5.1用户密码passwd配置

    vi passwd

    passwd文件的内容如下:

    ### This file is an example password file for svnserve.

    ### Its format is similar to that of svnserve.conf. As shown in the

    ### example below it contains one section labelled [users].

    ### The name and password for each user follow, one account per line.

    [users]

    # harry = harryssecret

    # sally = sallyssecret

    test = 123456789 ##新增用户的用户名和密码

    5.2权限控制authz配置

    vi authz

    目的是设置哪些用户可以访问哪些目录,authz文件的内容如下:

    ### This file is an example authorization file for svnserve.

    ### Its format is identical to that of mod_authz_svn authorization

    ### files.

    ### As shown below each section defines authorizations for the path and

    ### (optional) repository specified by the section name.

    ### The authorizations follow. An authorization line can refer to:

    ###  - a single user,

    ###  - a group of users defined in a special [groups] section,

    ###  - an alias defined in a special [aliases] section,

    ###  - all authenticated users, using the '$authenticated' token,

    ###  - only anonymous users, using the '$anonymous' token,

    ###  - anyone, using the '*' wildcard.

    ###

    ### A match can be inverted by prefixing the rule with '~'. Rules can

    ### grant read ('r') access, read-write ('rw') access, or no access

    ### ('').

    [aliases]

    # joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average

    [groups]

    # harry_and_sally = harry,sally

    # harry_sally_and_joe = harry,sally,&joe

    # [/foo/bar]

    # harry = rw

    # &joe = r

    # * =

    # [repository:/baz/fuz]

    # @harry_and_sally = rw

    # * = r

    [/]

    test = rw

    设置[/]代表根目录下所有的资源

    5.3服务svnserve.conf配置

    vi svnserve.conf

    svnserve.conf文件的内容如下:

    [general]

    #匿名访问的权限,可以是read,write,none,默认为read

    anon-access=none

    #使授权用户有写权限

    auth-access=write

    #密码数据库的路径

    password-db=passwd

    #访问控制文件

    authz-db=authz

    #认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字

    realm=/opt/svn/repositories

    启动svn服务

    svnserve -d -r /opt/svn/repositories

    6、查看SVN进程

    ps -ef|grep svn|grep -v grep

    返回

    root     20850     1  0 Jul24 ?        00:00:00 svnserve -d -r /opt/svn/repositories

    7、查看SVN监听的端口

    netstat -ln |grep 3690

    8、停止启动SVN

    killall svnserve    #停止

    svnserve -d -r /opt/svn/repositories  #启动

    9、安装svn客户端

    目前最流行的svn客户端非TortoiseSVN莫属

    下载安装

    http://sourceforge.net/projects/tortoisesvn/files/latest/download?source=dlp

    客户端连接地址:svn://公网或内网的IP地址,有时候需要添加端口号

    用户名/密码: test/123456789  ##要和之前设置的用户名和密码匹配

    注意:

             默认端口为3690,如果该端口被占用,或者需要修改端口,使用下面语句

    svnserve -d -r /opt/svn/repositories --listen-port 3691

    如果出现:Unable to connect to a repository at URL 'svn://202.72.252.246'

    无法连接主机“202.72.252.246'”: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。

    执行一下语句

    修改
    iptables -I INPUT -p tcp --dport 3690 -j ACCEPT
    保存
    /etc/rc.d/init.d/iptables save
    重启
    service iptables restart
    查看
    /etc/init.d/iptables status
  • 相关阅读:
    time模块
    Python进程模块
    Django面试题
    基本命令行语句
    scrapy中的配置与中间件
    JSON编码于解码对应dump于load
    python操作数据库
    Python里的方法
    正则表达式
    Python常用模块
  • 原文地址:https://www.cnblogs.com/houdj/p/5292955.html
Copyright © 2020-2023  润新知