unison实时双向数据同步

软件下载
ocamlopt下载地址:http://caml.inria.fr
Unison下载地址:http://www.seas.upenn.edu/~bcpierce/unison
1、安装unison前先安装ocamlopt。安装ocamlopt:
tar -xvf ocaml-4.02.0.tar.gz
./configure
make world.opt
make install
2、安装Unison
tar -xvf unison-2.48.3.tar.gz
make UISTYLE=text THREADS=true STATIC=true
执行完成以上命令之后,在当前目录下生成一个unison文件。
cp unison /usr/local/bin
一、配置双机ssh信任
A服务器IP:192.168.6.128
B服务器IP:192.168.6.129
1、在两台机器上都执行一遍以下命令
1)A服务器上用root用户登录系统,在root用户主目录下创建.ssh目录并赋予700权限
mkdir ~/.ssh
chmod 700 ~/.ssh
2)使用ssh-keygen命令生成第2版ssh协议的RAS密钥
ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa)
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
18:19:17:27:47:ea:e8:59:b1:a2:89:e8:0b:a6:85:d1 root@localhost.localdomain
2、添加密钥文件到授权密钥文件中
1)root用户登录
cd ~/.ssh
[root@localhost .ssh]# ssh 192.168.6.128 cat /root/.ssh/id_rsa.pub >> authorized_keys
[root@localhost .ssh]#ssh 192.168.6.129 cat /root/.ssh/id_rsa.pub >> authorized_keys
scp authorized_keys 192.168.6.129:/root/.ssh/
chmod 600 /root/.ssh/authorized_keys
2)在B服务器上执行chmod 600 /root/.ssh/authorized_keys
3)测试
在A、B服务器上执行以下命令
ssh 192.168.6.128 date
ssh 192.168.6.129 date
在第一次执行时,会要求输入密码,再次执行时不需要输入密码就能显示系统日志,说明ssh互相信任。
二、使用unison
1、本地使用unison
unison /data1 /data2 -batch
#-batch 全自动模式,接受默认操作并执行,不需人工干预
2、远程使用unison
unison <本地目录> ssh://remoteIP/<远程目录的绝对路径>
unison /data1 ssh://root@192.168.6.129//data2 -batch
3、配置文件方式
修改配置文件default.prf(/root/.unison目录下)
# Unison preferences file
root=/data1
root=ssh://root@192.168.6.129//data2
#force=/data1
#path=/data1
#path=/data2
ignore=Path WEB-INF/tmp
batch=true
maxthreads=300
fastcheck=true
owner=true
group=true
perms=-1
sshargs=-C
xferbycopying=true
confirmbigdel=false
log=true
logfile=/root/.unison/log.log
repeat=1 #间隔1s重新扫描
执行unison default.prf
unison实时双向数据同步的更多相关文章
- Inotify+rsync实现实时数据同步
使用rsync可以实现数据同步,但是即使使用crontab定时任务最小执行间隔为1分钟,在数据实时性要求比较高场合需使用inotify+rsync实现实时同步 下载inotify wget https ...
- rsync数据同步备份
一.rsync简介 (1)rsync是什么? rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据同步备份的优秀工具. (2)rsync作用比较 远程拷贝:有点类似ssh的scp ...
- Linux实战教学笔记21:Rsync数据同步工具
第二十一节 Rsync数据同步工具 标签(空格分隔): Linux实战教学笔记-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载,转载 ...
- wtf!rds数据同步居然出问题了--菜鸟db的数据修复历程
由于一次上线操作的数据变更太多,导致执行时间很长! 由于做手动主从关系,所以操作落在了主库上. 由于主从关系不是对整个库的操作,所以在有表新增的地方,添加了dts新的同步关系. db变更完成后,就发布 ...
- 搭建中小规模集群之rsync数据同步备份
NFS重要问题 1.有关NFS客户端普通用户写NFS的问题. 1)为什么要普通用户写NFS. 2)exports加all_squash. Rsync介绍 什么是Rsync? Rsync是一款开源的.快 ...
- Linux系统——Rsync数据同步工具
Rsync的优点及缺点 优点:类似cp命令.scp命令,但rsync为增量复制工具 缺点:针对大文件,效率非常高(打包再比对),针对小文件,效率非常低. Rsync作用 (1)可使本地和远程两台主机之 ...
- 【集群实战】Rsync数据同步工具
1. Rsync介绍 1.1 什么是Rsync? Rsync是一款开源的,快速的,多功能的,可实现全量及增量的本地或远程数据同步备份的优秀工具.Rsync软件适用于unix/linux/windows ...
- 【基础】:Rsync数据同步工具
第二十一节 Rsync数据同步工具 1.1 Rsync介绍 1.1.1 什么是Rsync? 1.1.2 Rsync简介 1.3 Rsync的特性 1.1.4 Rsync的企业工作场景说明 1.2 Rs ...
- rsync unison+inotify双向实时同步
rsync多线程同步 A:文件服务器 ip:10.10.1.10 B:备份服务器 ip:10.10.1.11 1.在B服务器上安装rsync软件 tar xzvf rsync-3.1.0.tar.gz ...
随机推荐
- struct可以拥有class般的构造函数
struct A { int a, b; A(int x, int y) :a(x), b(y){} }; int main() { A a(1, 2); cout << a.a < ...
- UVALive - 5116
dfs n以内所有素数的乘积map或set删多余的,有点思维在里面,就写写
- nyoj组合数
算法:深搜 描述 找出从自然数1.2.... .n(0<n<10)中任取r(0<r<=n)个数的所有组合. 输入输入n.r.输出按特定顺序输出所有组合. 特定顺序:每一个组合中 ...
- POJ3111 K Best(另类背包+二分+变态精度)
POJ3111 K Best,看讨论区说数据有点变态,精度要求较高,我就直接把循环写成了100次,6100ms过,(试了一下30,40都会wa,50是4000ms) 第一次在POJ上看到下面这种东西还 ...
- hihoCoder挑战赛14 A,B,C题解
转载请注明出处: http://www.cnblogs.com/fraud/ ——by fraud 题目1 : 不等式 时间限制:10000ms 单点时限:1000ms 内存限制:2 ...
- Linux下MySQL的彻底卸载和安装配置字符集
前言: Linux环境下MySQL的安装和配置在网上已经有很多教程了.之所以写这篇文章是因为在配置字符集的时候找了网上的一些教程发现并不能用导致折腾了一阵子.下面的教程均是亲自实践. MySQL的彻底 ...
- css技巧之如何实现ul li边框重合
提到边框重合,我们不妨打开淘宝首页浏览主体分类内容板块瞧瞧---亲,你看到了,正是这个,边框重合.其实我们不难发现,这个效果并不难,只是我们没有真正的动手做过而已,所以不知道怎么做,那么下面就是一个很 ...
- 《python基础教程》笔记之 元组
元组不能修改,创建语法很简单:使用逗号分隔了一些值,则自动创建了元组. >>> 1,2,3(1, 2, 3)>>> 1,(1,) 元组的节本操作同列表相同,除了没有 ...
- 【课上OJ】掉入陷阱的数
对任意一个自然数N0,先将其各位数字相加求和,再将其和乘以3后加上1,变成一个新自然数N1,然后对N1重复这种操作,可以产生新自然数N2,多次重复这种操作运算,运算结果最终会得到一个固定不变的数Nk, ...
- cf B. The Fibonacci Segment
http://codeforces.com/contest/365/problem/B #include <cstdio> #include <cstring> #includ ...