【shell】gerrit同步备份脚本的实现
本期分享下gerrit如何实现备份,由于之前的一台代码服务器直接down掉,所以为了以防万一,开始备份gerrit数据,有人说,gerrit不过是个审查代码的工具,备份这个做什么,git是分布式代码管理的,即使服务器不工作了,很多人本地的代码也是保存着的,慌什么!!!说得对,git管理的代码不会丢失,但是gerrit上最直观的的open merged abandoned这几个状态的审查不见了,研发不开心了。说是工具,有时候依赖工具也不是什么坏事,毕竟是能提升工作效率的,所以就需要进行gerrit的备份,后就有今天gerrit实现同步备份的分享了。
1.备份服务器gerrit的安装一系列
2.ldap的同步备份
3.gerrit的同步备份(今天要说的!)
说下基本思路:
a.暂停主服务器gerrit服务
GERRIT_BIN="/home/lenovo/review_site/bin/"
GERRIT_BIN44="/ccf_disk/sdd/Gerrit_Backup/review_site/bin/"
cd $GERRIT_BIN
./gerrit.sh stop
b.登录备份服务器,暂停备份服务器gerrit服务,退出备份服务器
ssh lxxxx_xx@10.4.xx.xx > /dev/null 2>&1 << end
cd $GERRIT_BIN44
./gerrit.sh stop
exit
end
c.同步(rsync)主服务器、备份服务器gerrit目录
rsync -vzrtopg --progress -e ssh --delete /home/lenovo/review_site/ lxxx_xx@10.4.xx.xx:/ccf_disk/sdd/Gerrit_Backup/review_site/
d.开启主服务器gerrit服务
cd $GERRIT_BIN
./gerrit.sh start
e.登录备份服务器修改备份服务器gerrit配置及启动脚本,启动备份服务器gerrit服务后退出备份服务器
ssh lxxx_xx@10.4.xx.xx > /dev/null 2>&1 << end
sed -i "s/home\/lenovo/ccf_disk\/sdd\/Gerrit_Backup/g" /ccf_disk/sdd/Gerrit_Backup/review_site/bin/gerrit.sh
sed -i "s/226/69/g" /ccf_disk/sdd/Gerrit_Backup/review_site/etc/gerrit.config
sed -i "s/home\/lenovo/ccf_disk\/sdd\/Gerrit_Backup/g" /ccf_disk/sdd/Gerrit_Backup/review_site/etc/gerrit.config
cd $GERRIT_BIN44
./gerrit.sh start
exit
end
rsync的使用(高效)
rsync -vzrtopg --progress -e ssh --delete /home/lenovo/review_site/ lxxx_xx@10.4.xx.xx:/ccf_disk/sdd/Gerrit_Backup/review_site/
敲黑板!!ssh互信免密:
主服务器登录备份服务器时免输入密码,让脚本继续执行,不会因为需要输入密码而暂停。
ssh-keygen+ssh-copy-id
期待下一期...
【shell】gerrit同步备份脚本的实现的更多相关文章
- centos shell编程6一些工作中实践脚本 nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志 直接送给bc做计算 gzip innobackupex/Xtrabackup 第四十节课
centos shell编程6一些工作中实践脚本 nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志 直接送给bc做计算 gzip innobacku ...
- Shell 同步时间脚本
Linux系统同步时间脚本 Linux操作系统,如果时间和网络时间差距太大的话.可能会导致程序,进程启动不了.所以linux系统时间同步显得尤为重要,本文在借鉴网上众多资料后,以centos_6.X系 ...
- (转)企业Shell实战-MySQL分库分表备份脚本
本文来自http://www.xuliangwei.com/xubusi/252.html 免费视频讲解见 http://edu.51cto.com/course/course_id-5064.htm ...
- Shell脚本使用汇总整理——达梦数据库备份脚本
Shell脚本使用汇总整理——达梦数据库备份脚本 Shell脚本使用的基本知识点汇总详情见连接: https://www.cnblogs.com/lsy-blogs/p/9223477.html 脚本 ...
- Shell脚本使用汇总整理——mysql数据库5.7.8以前备份脚本
Shell脚本使用汇总整理——mysql数据库5.7.8以前备份脚本 Shell脚本使用的基本知识点汇总详情见连接: https://www.cnblogs.com/lsy-blogs/p/92234 ...
- Shell脚本使用汇总整理——mysql数据库5.7.8以后备份脚本
Shell脚本使用汇总整理——mysql数据库5.7.8以后备份脚本 Shell脚本使用的基本知识点汇总详情见连接: https://www.cnblogs.com/lsy-blogs/p/92234 ...
- 用svnsync 同步备份 svn 版本库 从一台服务器到另一台服务器
如用svnsync 同步备份两台机器的svn .(就以linux服务器到windows服务器为例子) 要同步的项目名称:source_svn svn 版本库1 .4 以上 源目录: ...
- wordpress利用rsync同步备份
我搭建的wordpress服务器现在使用的系统是opensuse, 服务器上面已做脚本和计划任务将wordpress使用的数据库与web目录每天压缩备份放到 /data/backup目录下 opera ...
- 同步备份工具之 rsync
1.常用同步方法 SCP. NFS. SFTP. http. samba. rsync. drbd(基于文件系统同步,效率高) 2.rsync 介绍 rsync,英文全称是 remote synchr ...
随机推荐
- Request对象和Response对象详解
Request 1.获取请求的基本信息 1>获取请求的url和uri 2>获取url后面的请求参数部分的字符串 3>获取请求方式 4>获取主机名,IP地址 5>获取 Co ...
- IHookHelper的用法
1.实例化IHookHelper 对象: IHookHelper m_hookHelper = new HookHelperClass(); m_hookHelper.Hook = this.axM ...
- js进阶 11-2 jquery属性如何操作
js进阶 11-2 jquery属性如何操作 一.总结 一句话总结:jquery中的属性用attr方法表示.jquery中都是方法. 1.jquery中的属性的增删改查操作? 只需要两个方法, at ...
- linux网络编程学习笔记之二 -----错误异常处理和各种碎碎(更新中)
errno 在unix系统中对大部分系统调用非正常返回时,通常返回值为-1.并设置全局变量errno(errno.h),如socket(), bind(), accept(), listen(). e ...
- ZBar 是款桌面电脑用条形码/二维码扫描工具
ZBar 是款桌面电脑用条形码/二维码扫描工具 windows平台python 2.7环境编译安装zbar 最近一个项目需要识别二维码,找来找去找到了zbar和zxing,中间越过无数坑,总算基本 ...
- 小强的HTML5移动开发之路(36)——jQuery中的DOM操作
1.查询 利用选择器查找节点 使用 html() / text() / attr() 输出节点文本和属性值. 注意:下拉列表使用 val() <html> <head> < ...
- 51nod1673 树有几多愁 - 贪心策略 + 虚树 + 状压dp
传送门 题目大意: 给一颗重新编号,叶子节点的值定义为他到根节点编号的最小值,求所有叶子节点值的乘积的最大值. 题目分析: 为什么我觉得这道题最难的是贪心啊..首先要想到 在一条链上,深度大的编号要小 ...
- maven 依赖(依赖范围,聚合,继承等)
目录: 1.什么是依赖? 2.依赖的管理:依赖的范围与传递,依赖的排除,依赖的原则(maven对依赖冲突的处理原则) 3.依赖的版本管理 4.继承与聚合 1.什么是依赖? 简单的讲,当jar包A需要j ...
- 【39.77%】【codeforces 724B】Batch Sort
time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...
- Hibernate——(5)持久化对象和一级缓存机制
一.对象的三种状态 1.暂时态:当对象刚创建,和Session没有发生任何关系时,当程序运行完就即刻消失,被称为暂时态. 2.持久态:当执行如下代码时,对象变为持久态 Emp e = new Emp( ...