unison 双向镜像同步   需要 ocaml 依赖工具(3.0.7)

而且需要机器ssh双向互信

ssh 开启互信 # vi in.sh  直接执行 in.sh 就可以了

mkdir ~/.ssh
chmod .ssh/
/usr/bin/ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod ~/.ssh/authorized_keys

然后拷贝  .ssh/authorized_keys 中秘钥到各自的 .ssh/authorized_keys 文件中。

这样都可以进行无密码验证登陆。

示例:
ssh -p root@172.16.2.26
测试文件传输:
scp -P 2233 /data/in.sh root@172.16.2.16:/data

下载安装

wget http://www.seas.upenn.edu/~bcpierce/unison//download/releases/unison-2.32.52/unison-2.32.52.tar.gz
wget http://caml.inria.fr/pub/distrib/ocaml-3.10/ocaml-3.10.2.tar.gz
解压缩 编译
tar -xf ocaml-3.10..tar.gz
mv ocaml-3.10. /usr/local/ocaml
/usr/local/ocaml/
./configure
make world opt
make install

tar -xf unison-2.32..tar.gz
mv unison-2.32. /usr/local/unison
cd ../unison/
make UISTYLE=text
cp unison /usr/local/bin
拷贝执行文件到 系统默认执行目录
cp unison /usr/local/bin

配置同步策略文件 test.prf 测试;

default.prf   默认在 /root/.unison/default.prf 

(默认同步策略文件是 default.prf  ;直接执行 unison 命令 默认是加载 default.prf )

[root@localhost ~]# vi test.prf

root = /data/wwwroot/img
root = ssh://root@172.16.2.26//data/wwwroot/upload
# path = upload
# 指定同步目录
# path = log
# igonre =
# 排除目录
batch = true
owner = true
group = true
perms = -
maxthreads =
# 最大线程
fastcheck = true
# true 是通过时间同步
fastcheck = false
# false 通过内容
rsync = false
sshargs = -C
xferbycopying = true
confirmbigdel = false
log = true
logfile = /var/log/unison/unison.log
# 日记记录文件

同步执行 

直接执行  unison test  本机16和同步机器26 便可以进行目录同步

注意如果单方服务进行新增删除,则也会进行同步删除。

定时同步:


cat
.sh #!/bin/bash
# unison /root/.unison/test.prf
/usr/local/bin/unison 添加定时任务 每5秒进行同步
crontab -e
# * * * * * sleep ; sh /opt/.sh &> /dev/null

unison 双向镜像同步的更多相关文章

  1. Rsync+unison双向文件同步

    1.配置RSYNC服务器的同步源: 基于SSH同步源 rsync -avz /server/rsyncd/*  chen@172.16.23.204:/client/rsyncd 基于RSYNC同步源 ...

  2. 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 ...

  3. 电脑桌面与群晖NAS双向实时同步-20210105

      电脑桌面与群晖NAS双向实时同步 2021年1月15日星期五   一.购买群晖DS920+网络存储服务器.NEC超轻笔记本电脑(重量小于800克).小米10至尊版安卓智能手机和intel i9 1 ...

  4. mysql双向主从同步

    双向主从同步 双方互相主从同步配置 然后再my.cnf中加上如下配置 [mysqld]master1:auto_increment_increment = 2 //自增ID的间隔,如1 3 5间隔为2 ...

  5. Service系统服务(六):rsync基本用法、rsync+SSH同步、配置rsync服务端、访问rsync共享资源、使用inotifywait工具、配置Web镜像同步、配置并验证Split分离解析

    一.rsync基本用法 目标: 本例要求掌握远程同步的基本操作,使用rsync命令完成下列任务: 1> 将目录 /boot 同步到目录 /todir 下   2> 将目录 /boot 下的 ...

  6. docker registry 镜像同步

    docker registry 镜像同步 Intro 之前我们的 docker 镜像是保存在 Azure 的 Container Registry 里的,最近我们自己搭建了一个 docker regi ...

  7. (十八)VMware Harbor 镜像同步

    为什么需要镜像同步 由于对镜像的访问是一个核心的容器概念,在实际使用过程中,一个镜像库可能是不够用的,下例情况下,我们可能会需要部署多个镜像仓库: 国外的公有镜像下载过慢,需要一个中转仓库进行加速 容 ...

  8. unison+inotify-tools触发式双向自动同步

    双向实时数据同步部署 首先添加服务器ssh信任,即免秘钥登陆 Web1:192.168.10.36 Web2:192.168.10.37 分别在web1和web2上执行以下命令 mkdir ~/.ss ...

  9. unison+inotify实现文件双向自动同步

    nfs适合存小图片和小文件,有一个致命的缺点,就是其中一台web服务挂掉之后,会直接导致web页面无法访问,动态的那种数据, 而且数据量很大的数据不适合nfs Unison是一款跨平台(window, ...

随机推荐

  1. Luogu4069 SDOI2016 游戏 树链剖分、李超线段树

    传送门 每一次加的是一个一次函数,一些呈一次函数的线段求最小值,显然用到李超线段树. 然后把维护序列的李超线段树强行上树,就直接套上树剖就可以了. 至于李超树如何区间查询,因为一次函数线段的最小值一定 ...

  2. 消息认证码 - MAC (Message Authentication Code)

    消息认证包括两个目标 1消息完整性认证: 确保张三发给我的消息是完整的,在传输过程中没有被第三方篡改 2消息的来源认证: 确保这个数据是张三发给我的,而不是李四发给我的 第一个目标通常使用散列函数来达 ...

  3. java之单元测试

    这篇主要简单讲下java的单元测试 目录结构如下: 如图,其中1是需要被测试的功能:2是测试模块:3是单元测试需要的引入包: 1. 功能模块1中 Calculator 的代码: package cn. ...

  4. 1 集群状态、增删改查、全量替换、强制创建、设置单个index的分片数副本数

    检查集群健康状态,可以看集群颜色.(黄色:primary shard都正常,replica不正常) GET /_cat/health?v 列出集群所有index GET /_cat/indices?v ...

  5. 采集15个代理IP网站,打造免费代理IP池

    采集的站点: 免费代理IP http://ip.yqie.com/ipproxy.htm66免费代理网 http://www.66ip.cn/89免费代理 http://www.89ip.cn/无忧代 ...

  6. php ajax生成excel并下载

    目标:使用php,通过ajax请求的方式生成一个excel,然后下载. 思路:大致思路是发送一个ajax请求到后台,后台php处理后生成一个excel文件,然后把生成的文件放到一个临时目录,然后把文件 ...

  7. robot framework笔记(二):在RF中自定义chrome启动参数

    (一)在RF中自定义chrome启动参数 这里主要是实现下面2个功能 1.禁用chrome正受自动测试软件控制的提示 2.设置默认的下载路径(一些导出.下载类的功能,将文件下载到指定路径下) 自定义一 ...

  8. Find 命令记录

    当需要查找一个时间的文件时 使用find [文件目录] -mtime [时间] 例如:查看mysql.bak目录下的1天前的文件 find mysql.bak -mtime 找到此文件之后需要将它移动 ...

  9. WampServer详解

    php能做什么,它是运行在服务器端的,web网站大部分数据都是存储在服务器上的,PHP就是用来处理这些存储在服务器的数据.跨平台,服务器可以是多种平台上的服务器,脚本语言,免费. wampserver ...

  10. [lambda] newbies of haskell

    site: https://www.haskell.org/ tutorial: http://learnyouahaskell.com/chapters 只言片语 Recursion is impo ...