zoukankan      html  css  js  c++  java
  • VisualSVN Server仓库迁移到Linux(包含所有版本, 权限,用户信息)

    公司开发服务器从Windows换成CentOS,所以要把原服务都转移到Linux下,MySQL、SMB的迁移都很顺利,但是SVN的转移却遇到了些问题,花费了三天时间,走了不少弯路,现在总算解决了SVN迁移问题,记录下:

    在Windows上我们是用VisualSVN Server作SVN服务的,Linux上是编译安装的subversion 1.7.7。
    Windows 的SVN仓库在E:SVNRepositories,Linux在 /data/svnrepos

    第1步,导出VisualSVN仓库:svnadmin dump E:SVNRepositories epo1 E: epo1.dump

    第2步,在Linux端create相同名称的仓库: svnadmin create /data/svnrepos/repo1

    第3步,在Linux端load Windows导出的库:
                cd /data/svnrepos
                svnadmin load repo1 < repo1.dump

    到此为止,repo1库就导入到Linux的subversion中了,但是用户信息、权限信息还没导入(这也是我折腾很久的问题),继续:

    第4步,把E:SVNRepositoriesauthz 上传到 /data/svnrepos
                把E:SVNRepositorieshtpasswd 复制为 passwd 并修改后上传到 /data/svnrepos
                修改后的passwd格式如下(其实就是用户名 = 密码):
                 [users]
                 user1 = 123
                 user2 = 456

    第5步,修改仓库的/conf/svnserve.conf,使它指向第4步上传的那两个文件:
                [general]
                anon-access = none
                auth-access = write
                password-db = ../../passwd
                authz-db = ../../authz

    到这里就完成了,用命令  svnserve -d -r  /data/svnrepos/ 启动subversion服务。

    • 这样做还有个问题是passwd文件原密码信息全丢失了,知道解决方法的请留言告诉我:)

    • 我只用了repo1这个仓库,如果有多个仓库一样步骤,分别导出导入,并修改仓库的/conf/svnserve.conf
    • 如果按照上述方法操作还是不行,启动svnserve时用  --log-file ./log.txt参数查看错误信息
  • 相关阅读:
    osip状态机分析
    配置tomcat 加载指定的jar
    oracle创建用户并指定表空间
    CentOS7通过rsync+crontab实现两台服务器文件同步
    CentOS7配置MySQL5.7主备
    CentOS7本地安装MySQL5.7
    设置mysql 事务锁超时时间 innodb_lock_wait_timeout
    获取指定年月的第一天与最后一天
    Nginx 反向代理504 Gateway Time-out
    ubuntu下安装配置apache2与php
  • 原文地址:https://www.cnblogs.com/lidabo/p/4633155.html
Copyright © 2011-2022 走看看