Centos 安装SVN服务器

之前一直想搭Git服务器,搭了好久没有搭好。后来还是选择搭SVN了。代码丢上来

  1. 检查已安装版本 
    #检查是否安装了低版本的SVN
    rpm -qa subversion
    #卸载旧版本SVN
    [root@localhost modules]# yum remove subversion
    
  2. 安装SVN
    yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
  3. 确认已安装了SVN模块
    cd /etc/httpd/modules
    ls | grep svn
    #会返回以下内容
    #mod_authz_svn.so
    #mod_dav_svn.so
    
  4. 验证安装
    检验已经安装的SVN版本信息

    svnserve --version

    返回以下内容:

  5. 创建代码库
    SVN软件安装完成后还需要建立SVN库

    mkdir -p /svn/web
    svnadmin create /svn/web
    

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

  6. 配置代码库-设置SVN用户名及密码
    进入上面生成的文件夹conf下,进行配置

    cd /svn/svn/conf
    #用户密码passwd配置 
    
    规则如下username=password
  7. 权限控制-authz
    这里是设置用户访问权限、访问目录。

    vi authz
    #设置[/]代表根目录下所有的资源
    #rw是读写权限
    [/]
    aoxiang=rw
    
  8. 服务svnserve.conf配置
    vi svnserve.conf
    #追加以下内容
    [general]
    #匿名访问的权限,可以是read,write,none,默认为read
    anon-access=none
    #使授权用户有写权限
    auth-access=write
    #密码数据库的路径
    password-db=passwd
    #访问控制文件
    authz-db=authz
    #认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
    realm=/svn/web
    
  9. 配置防火墙端口
    vi /etc/sysconfig/iptables
    #添加以下内容:
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
    #保存后重启防火墙 
    service iptables restart
    
  10. 启动SVN
    svnserve -d -r /svn/web
  11. 查看SVN进程
    ps -ef|grep svn|grep -v grep
    #返回一下信息:
    #root     12538     1  0 14:40 ?        00:00:00 svnserve -d -r /opt/svn/repositories
    
  12. 检测SVN 端口
    netstat -ln |grep 3690
    #返回一下信息:
    #tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN
    
  13. 停止重启SVN
    killall svnserve    //停止 
    svnserve -d -r /svn/web  // 启动 
    

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.