CentOS 6.5 部署Unison双向同步服务
环境介绍:
| 服务器 | IP |
| Server1 | 192.168.30.131 |
| Server2 | 192.168.30.132 |
1、添加主机互信:
a、添加host文件(在Server1、Server2分别操作):
[root@localhost ~]#echo -e "192.168.30.131 Server1\n192.168.30.132 Server2" >> /etc/hosts
b、更改主机名(在Server1、Server2分别操作):
[root@localhost ~]# sed -i "s/HOSTNAME=.*/HOSTNAME=Server1/g" /etc/sysconfig/network
[root@localhost ~]# hostname Server1
c、退出重新登录就会显示出主机名
d、添加互信
d1、在主机Server1上操作:
[root@Server1 ~]# ssh-keygen -t rsa
[root@Server1 ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@Server2
d2、在主机Server2上操作:
[root@Server2 ~]# ssh-keygen -t rsa
[root@Server2 ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@Server1
2、Unison安装
unison各种版本下载地址:
http://www.seas.upenn.edu/~bcpierce/unison//download.html
unison编译器下载地址:
http://caml.inria.fr/pub/distrib/ocaml-3.10
2.1、安装编译工具:Objective Caml compiler
[root@Server1 soft]# cd ocaml-3.10.2+rc1/
[root@Server1 ocaml-3.10.2+rc1]# ./configure
[root@Server1 ocaml-3.10.2+rc1]# make world opt
[root@Server1 ocaml-3.10.2+rc1]# make install && echo OK
2.2、安装Unison:
[root@Server1 unison-2.13.16]# cd ../unison-2.13.16
[root@Server1 unison-2.13.16]# make UISTYLE=text THREADS=true
此时会产生一个错误:
/bin/sh: etags: command not found
make[1]: [tags] Error 127 (ignored)
make[1]: Leaving directory `/soft/unison-2.13.16'
解决方法:
yum -y install ctags-etags
重新编译:
[root@Server1 unison-2.13.16]# make UISTYLE=text THREADS=true
[root@Server1 unison-2.13.16]# make install && echo OK
此时如果报错:
mv /root/bin//unison /tmp/unison-10301
mv: cannot stat `/root/bin//unison': No such file or directory
make: [doinstall] Error 1 (ignored)
cp unison /root/bin/
cp: cannot create regular file `/root/bin/': Is a directory
make: *** [doinstall] Error 1
解决方法:
[root@Server2 unison-2.13.16]# mkdir /root/bin
[root@Server2 unison-2.13.16]# cp unison /root/bin/
重新编译:
[root@Server1 unison-2.13.16]# make install && echo OK
2.3、修改配置文件;
[root@Server1 data]# cat /root/.unison/default.prf
# Unison preferences file
root = /data
root = ssh://root@Server2//data
#path = www
#ignore = Path wp-content/tmp
ignore = Path wp-config.php #忽略wp-config.php文件 相当于rsync的exclude
#nodeletion = /data
batch = true
maxthreads = 300
#repeat = 1
owner = true
group = true
perms = -1
fastcheck = false
sshargs = -C
xferbycopying = true
log = true
logfile = /tmp/unison.log
2.4、创建同步目录/data
[root@Server1 ~]# mkdir /data
[root@Server1 ~]# echo "aa" >> aa.txt
2.5、在Server2上同样操作之上步骤,此处略过
2.6、测试同步
[root@Server1 ~]# unison -servercmd
[root@Server1 data]# unison -servercmd=/root/bin/unison
Contacting server...
Looking for changes
Waiting for changes from server
Reconciling changes
local Server2
new file ----> bb.txt
local : new file modified on 2015-08-19 at 14:42:45 size 5 rw-r--r-- user=0 group=0
Server2 : absent
Propagating updates
UNISON started propagating changes at 14:43:10 on 19 Aug 2015
[BGN] Copying bb.txt
from /data
to //Server2//data
[END] Copying bb.txt
UNISON finished propagating changes at 14:43:10 on 19 Aug 2015
Saving synchronizer state
Synchronization complete (1 item transferred, 0 skipped, 0 failures)
[root@Server1 data]#
CentOS 6.5 部署Unison双向同步服务的更多相关文章
- Centos下MySQL数据库主从双向同步配置
MYSQL支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护日志文件的一个索引以跟踪日志循环.当一个从服务器连接到主服务 ...
- Linux下 Unison 实现文件双向同步
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://hx100.blog.51cto.com/44326/612301 一.Uniso ...
- linux web服务器静态资源的处理 unison+inotify双向同步
linux web服务器静态资源的处理 unison+inotify双向同步 http://monkeyzhu.blog.51cto.com/5764358/1324391 简介 unison可以使两 ...
- unison + inotify 实现文件实时双向同步部署步骤
unison + inotify 实现文件实时双向同步部署步骤 一. Unison简介 Unison是Windows.Linux以及其他Unix平台下都可以使用的文件同步工具,它能使两个文件夹(本地或 ...
- CentOS 7.2 部署Rsync + Lsyncd服务实现文件实时同步/备份 (一)
接收端配置: 1.安装rsync yum -y install rsync 2.配置同步模块 1. 编辑同步配置文件 vi /etc/rsyncd.conf 2. 同步模块配置参数 # any nam ...
- unison 双向镜像同步
unison 双向镜像同步 需要 ocaml 依赖工具(3.0.7) 而且需要机器ssh双向互信 ssh 开启互信 # vi in.sh 直接执行 in.sh 就可以了 mkdir ~/.ssh ...
- Centos 配置 Mysql 主从双向同步
配置之前,请先阅读mysql主从复制: Mysql-主从复制 原: 主从环境: 主服务器:192.168.153.130 从服务器:192.168.153.131 1.从数据库创建同步用户,将主数据 ...
- SymmetricDS 数据库双向同步开源软件入门
一句话概括该软件:SymmetricDS是一个文件和数据库同步软件,开源的,支持多主复制,同步时过滤和在异构的网络环境中进行数据转换传输.它支持单向和双向上的多个订阅者,异步的数据复制. 以下是从CS ...
- MySQL Dual-Master 双向同步
本文介绍的Mysql Dual-Master 复制实施方法可能不是最完美.最强大的.但是在我的应用环境下能很好的满足各项需求. 本文基于我们仅仅使用两台MySQL服务器的情况下,但是你会发现文章中介绍 ...
随机推荐
- C语言练习-学生信息管理系统
题目要求: 学生信息管理系统struct studentInfo{ int id; char name[128]; int age; char sex; int c_score; int cpp_sc ...
- VS2010生成安装包制作步骤
VS2010生成安装包制作步骤 在VS2010中文旗舰版本中生成winForm安装包,可以复制你电脑中的开发环境,避免你忘记了一下配置然后在别的机器上运行不起来.也省去了Framwork的安装. ...
- 使用指定格式的字符串变量格式化日期字符串,DateAndTime取时间间隔
private void btn_GetTime_Click(object sender, EventArgs e) { lab_time.Text = DateTime.Now.ToString(& ...
- Couchbase集群和Redis集群解析
Couchbase集群和Redis集群解析 首先,关于一些数据库或者是缓存的集群有两种结构,一种是Cluster;一种是master-salve. 关于缓存系统一般使用的就是Redis,Redis是开 ...
- 扩展Session机制
分布式缓存扩展Session机制 为什么要把Session放在缓存中 Session是我们常用的状态保持的对象,它通常会生成一个唯一的SessionId以Cookie的方式存在浏览器端,而Sess ...
- window wamp下xhprof的安装使用,Graphviz配置
在新的工作安排下来前赶紧把手上工作优化下,本来是靠xdebug+grindview来的,不过还是麻烦,就换上这个轻量级的性能测试了.网上搜的大多都是lamp环境下的,wamp下的倒是不多,而且不好用, ...
- 可编辑DIV (contenteditable="true") 在鼠标光标处插入图片或者文字
近期需开发一个DIV做的编辑器,插入表情图片可直接预览效果,仔细参考了下百度贴吧的过滤粘贴过来文件的THML代码,自己整理了下.写出来只是和大家分享下,我自己也不大懂,经过努力,幸好搞定. 蛋疼的事情 ...
- HttpStack及其实现类
HttpStack及其实现类 前两篇已经对网络请求流程已经梳理了个大概,这次我们着重看一下HttpStack和它的其实现类.我们之前在Network篇讲过它仅有一个实现类,而今天我们讲的HttpSta ...
- ASP.NET MVC4简单使用ELMAH记录系统日志
ASP.NET MVC4简单使用ELMAH记录系统日志 前言 在项目开发.测试以及已经上线的项目中都会存在bug,而如果我们在项目的各个阶段都能及时的监控系统出现的任何问题,那么对于我们开发人员来说完 ...
- ICMP:internet 控制报文协议
ICMP:internet 控制报文协议 1.概述 ICMP是(Internet Control Message Protocol)Internet控制报文协议.它是TCP/IP协议族的一个 ...