linux svn服务器迁移

2022年10月28日08:43:17

网上有很多的迁移方案,但是发现不适合多个子项目的svn库
例如:

svnadmin create /usr/local/svn_home/repostory 创建版本库repostory
cd /usr/local/svn_home/repostory

cp hooks/pre-revprop-change.tmpl hooks/pre-revprop-change

chmod 777 hooks/pre-revprop-change

vim hooks/pre-revprop-change # 修改最后一行代码,如下
exit 0

具体迁移命令
svnsync  init  file:///usr/local/svn_home/repostory svn://ip或者域名/repostory
svnsync sync file:///usr/local/svn_home/repostory

通过svn的使用发现一个其他办法,更加简单高效

创建两个仓库

svnadmin create /svn_data/www/crm
svnadmin create /svn_data/www/api
启动服务脚本 svn.sh

#!/bin/bash
#chkconfig: 2345 80 90
#description:auto_run
/usr/bin/svnserve -d -r /svn_data/www

启动服务
sh svn.sh

svnserve启动是没有依赖特定文件或者配置的,所以完全可以copy原服务器的文件到新服务,修改脚本之后直接启动

我的方案是:
1,原服务器a svn服务停止,scp服务器a的/svn_data/www目录的所有文件到新服务器b,如果a,b不能直连,通过sftp转传一下
2,最好不要先子项目改配置文件,按照服务器a的路径直接迁移过去,在启动sh svn.sh服务,客户端测试一下a,b服务器svn项目的日志和文件是否一致
3,测试没问题之后,在根据自己新服务的资源,修改svn项目的配置文件,或者更改路径等,在启动测试

这样省去很多操作,特别子项目很多的svn库

一些需要注意的操作:

开机启动
将脚本拷贝到/etc/rc.d/init.d目录下
cp  /svn_data/svn.sh /etc/rc.d/init.d/

2.增加脚本的可执行权限
chmod +x  /etc/rc.d/init.d/svn.sh

3.添加脚本到开机自动启动项目中
cd /etc/rc.d/init.d
chkconfig --add svn.sh
chkconfig svn.sh on

注意:关闭 selinux 不然会影响开机启动
vi /etc/selinux/config,
将SELINUX=enforcing改为SELINUX=disabled

关闭firewalld
systemctl status firewalld.service
systemctl stop firewalld.service
systemctl disable firewalld.service
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值