SVN使用 注意事项 及 问题处理

Linux安全运维 (2566) 2023-12-16 15:50:23

1. 创建计划任务,选择“只在用户登陆时运行”,而不要选择“不管用户是否登陆都要运行”

因为执行备份计划任务时,会弹出一个cmd命令对话框来显示当前的备份进度,所以此计划任务属于窗口类型的计划任务。
选择“不管用户是否登陆都要运行”会导致窗口类的应用启动出现问题,但是要注意服务器上的用户不能注销。
每次退出远程桌面时,直接关闭远程桌面程序,而一定不要选择注销。

2. 不要向备份服务器(192.168.3.200)执行commit操作。

该热备方案执行的是单向同步的策略,向slave进行提交会使slave上的版本号高于当前master上的版本号,当master再向slave进行sync时,会由于slave的版本号高于master的版本号而报错。
一方面要禁止用户向slave进行commit操作,另一方面要对slave上的防火墙进行限制,允许来自办公网络(192.168.0.0/22)的2222端口的远程访问,同时禁止来自办公网络其他端口的访问。

3. commit时hook的post-commit报错,提示访问被forbidden

可能是由于master被用户修改了权限设置而未告知造成权限的不同步,此时可以将master上的权限配置文件通过192.168.0.158上的共享目录复制到slave的对应目录中
权限配置文件路径:E:\Repositories\xxxxxx\conf\VisualSVN-SvnAuthz.ini

4. 当意外向slave进行commit操作时导致不能再向master进行commit,并且sync报错

问题处理的思路是将slave上提交的内容进行删除,使slave的版本号低于master的版本号,并在master上重新进行提交并在此同步
删除数据文件的路径:
E:\Repositories\Project\db\revprops
E:\Repositories\Project\db\revs

将slave的目录下对应的超出master的版本号的文件删除,然后修改E:\Repositories\Project\db下的current文件,将其中的数据改为删除版本号之后最大的版本号,则,slave恢复到current中指定的版本号
然后在master上执行sync命令
svnsync sync https://192.168.3.200/svn/Project --username sync

5. 不要手动删除备份目录及其中的内容

全量备份是在192.168.0.158的svnhotcopyfullbackup目录中,增量备份是在svnrootbak目录中,全量备份会保存最新两天的内容,而增量备份会保存最近7天的内容,这两个备份目录中的内容均会由脚本自动定期清理,不要手动删除目录或者目录中的内容,除非非常确定不再需要备份文件。

THE END

发表评论