`

文件同步技术总结

阅读更多
文件同步技术:
Linux->Linux: rsync+inotify
Window –> Linux: cwRsync + 定时任务
linux 使用NSF 映射远程磁盘目录
分布式中经常需要文件同步,综合来说性能是rsync更好,将文件同步到本地,NSF挂载安装和维护都比较简单

一.Linux
一.安装rsync
一、分别在两台在目标服务器安装Rsync服务端
1、关闭SELINUX
vi /etc/selinux/config #编辑防火墙配置文件
#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加
wq! #保存,退出
setenforce 0 #立即生效

2、开启防火墙tcp 873端口(Rsync默认端口)
vi /etc/sysconfig/iptables #编辑防火墙配置文件
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 873 -j ACCEPT
:wq! #保存退出
/etc/init.d/iptables restart #最后重启防火墙使配置生效

3、安装Rsync服务端软件
yum install rsync xinetd #安装
vi /etc/xinetd.d/rsync #编辑配置文件,设置开机启动rsync
disable = no #修改为no
:wq! #保存退出
/etc/init.d/xinetd start #启动(CentOS中是以xinetd来管理Rsync服务的)

4、创建rsyncd.conf配置文件
vi /etc/rsyncd.conf #创建配置文件,添加以下代码
logfile = /etc/rsyncd.log
pidfile = /etc/rsyncd.pid
lock file = /etc/rsync.lock
secrets file = /etc/rsync.pass
motd file = /etc/rsyncd.Motd
[test]
path = /tmp/test
comment = test
uid = root
gid = root
port=873
use chroot = no
read only = no
list = no
max connections = 200
timeout = 600
auth users = root
hosts allow = 192.20.34.122


:wq!  #保存,退出
5、创建用户认证文件
注意目标端是  用户名:密码,源端是只用 密码,权限必须600
vi /etc/rsync.pass #配置文件,添加以下内容
root:123456
设置文件权限:
chmod 600 /etc/rsyncd.conf
启动rsync
/etc/init.d/xinetd start #启动
service xinetd stop #停止
service xinetd restart #重新启动
在源端:
vi /etc/passwd.txt  写入
123456
:wq!  保存退出
chmod 600 /etc/passwd.txt  #设置文件权限,只设置文件所有者具有读取、写入权限


6.运行指令:
rsync -avH /tmp/test root@192.20.34.144::test  --password-file=/etc/passwd.txt


二、安装配置inotify 服务
1、下载安装
# wget http://nchc.dl.sourceforge.net/project/inotify-tools/inotify-tools/3.13/inotify-tools-3.13.tar.gz
# tar xzvf inotify-tools-3.14.tar.gz
# cd inotify-tools-3.13
# ./configure  --prefix=/usr/local/inotify
# make
# make install
2、创建inotify_rsync.sh脚本
# vi inotify_rsync.sh
#!/bin/sh
if [ ! -f /etc/ passwd.txt];then
        echo "123456">/etc/passwd.txt
        /bin/chmod 600 /etc/passwd.txt
fi
log=/usr/local/inotify/logs/rsync.log
src="/tmp/test"
host="目标IP"
module="test"

/usr/local/inotify/bin/inotifywait -mr --timefmt '%d/%m/%y %H:%M' --format '%T %w %f' -e close_write,modify,delete,create,attrib $src |  while read DATE TIME DIR FILE; do
 
       FILECHANGE=${DIR}${FILE}
 
/usr/bin/rsync -avH --delete  --progress --password-file=/etc/ passwd.txt $src  rsyncuser@$host::$module &
echo "At ${TIME} on ${DATE}, file $FILECHANGE was backed up via rsync" >> $log
done


赋予脚本可执行权限
#chmod +x   inotify_rsync.sh
运行
#./ inotify_rsync.sh &



/usr/local/bin/inotifywait -mrq -e modify,delete,create,attrib ${src}
-m 是保持一直监听
-r 是递归查看目录
-q 是打印出事件
-e close_write,modify,delete,create,attrib 是指 “监听 创建 移动 删除 写入 权限” 事件

/usr/bin/rsync -avH --delete  --progress --password-file
-a 存档模式
-H 保存硬连接
-delete 删除于多余文件
--password-file 密码文件

二.  Windows

window 底下需要安装cwrsync。

1. 下载cwRsync_5.5.0_x86_Free.zip。
2. 配置环境变量到 E:\cwRsync_5.5.0_x86_Free\bin
3. 创建配置文件配置rsync.conf 以及rsync.pass, 和linux的相同
4. 运行
Rsync -avP /cygdrive/e/cwRsync_5.5.0_x86_Free/etc/tmp/test      root@192.20.34.144::test/  --password-file=/cygdrive/e/cwRsync_5.5.0_x86_Free/etc/rsync.pass

5. 通过定时任务配置,多久运行

三.NSF映射远程磁盘目录
1、在两台机器上安装nsf 、 portmap

yum  install  nfs-utils  portmap

2. 修改源机器exports文件

目录 IP(rw,sync,no_root_squash) 如:
/usr/local/platform/file 192.20.34.144(rw,sync,no_root_squash)

.
service rpcbind start 
service nfs start

3.修改目标机器

service rpcbind start 
service nfs start

运行mount指令
mount -t nfs 192.20.34.122: /usr/local/platform/file  /usr/local/platform/file
分享到:
评论

相关推荐

    数字通信同步技术的MTALAB与FPGA实现》PPT版

    第1章 同步技术的概念及FPGA基础 1 1.1 数字通信中的同步技术 2 1.2 同步技术的实现方法 4 1.2.1 两种不同的实现原理 4 1.2.2 常用的工程实现途径 5 1.3 FPGA概念及其在信号处理中的应用 6 1.3.1 基本概念及...

    音视频同步技术对比一览

    对音视频同步技术进行了总结,并对比一览.在多媒体文件采集,播放及对同步的要求都非常严格,如果从多媒体文件中分离出音视频数据的数据不同步,音视频的时间差则会越来越大,这是无法忍受的,所以在多媒体文件中,...

    基于WCF的AutoCAD与ArcGIS矿图数据同步技术

    矿图数据是煤矿企业正常生产过程中一项常用的重要基础资料,在总结现有矿图数据在CAD平台与GIS平台间转换方法研究成果及其缺陷的基础上,基于WCF分布式框架结构结合二次开发技术,提出了一种跨图形平台的矿图数据同步新...

    rar压缩软件.rar

    压缩文件的内容列表[技术信息[全部], 无修饰]。 'l' 列出存档文件的属性、大小、日期、时间和名称,每个文件一行。如 果文件被加密,行以 * 号开始。 'lt' 以多行模式显示详细的文件信息。此信息包括文件校验...

    中文简体压缩软件RAR 6.0

    它仍然可能恢复不在受损部位,而文件结 构破坏的文件。这对于非固实压缩文件通常有用。 当第二阶段完成,重建结构的压缩文件将被保存为 rebuilt.arcname.rar, 'arcname' 的位置是原始压缩文件名。 RAR/...

    UNIX 高级教程系统技术内幕

    2.9 小结 2.10 练习 2.11 参考文献 第3 章 线程和轻量级进程(41) 3.1 简介 3.1.1 动机 3.1.2 多线程和多处理器 3.1.3 并发和并行 3.2 基本抽象概念 3.2.1 内核线程 3.2.2 轻量级进程 3.2.3 用户线程 3.3 轻量级进程...

    数据通信五大技术.xmind

    xmind文件,数据通信的五大技术的小总结,包括信号的调制与编码,多路复用,同步技术,数据交换,差错控制技术

    软件框架技术 unit3-1源文件及数据库文件

    这个程序实现方法的具体内容我忘了,只需要使用@Data,@Repository,@Autowired,@Override,@Service,@RestController,@GetMapping等方法写的,具体实现的功能就是需要新建些.yml和.java及接口文件,这个文件当中...

    Windows应用程序捆绑核心编程光盘代码

    第1章 再谈计算机内存访问 1 1.1 引言 1 1.2 内存管理概述 1 1.2.1 虚拟内存 1 1.2.2 CPU工作模式 2 1.2.3 逻辑、线性和物理地址 3 1.2.4 存储器分页管理机制 3 1.2.5 线性地址到物理地址的...15.7 本章小结 358

    UNIX环境高级编程_第二版中文

    4.24 文件访问权限位小结  4.25 小结  习题  第5章 标准I/O库  5.1 引言  5.2 流和FILE对象  5.3 标准输入、标准输出和标准出错  5.4 缓冲  5.5 打开流  5.6 读和写流  5.7 每次一行I/O  5.8...

    windows驱动开发技术详解-part2

     3.3.5 VC编译小结  3.4 查看调试信息  3.4.1 打印调试语句  3.4.2 查看调试语句  3.5 手动加载NT式驱动  3.6 编写程序加载NT式驱动  3.6.1 SCM组件和Windows服务  3.6.2 加载NT驱动的代码  3.6.3 ...

    CSharp常用技术总结(DOC)

    4、让文本框同步显示dataGridView中的当前记录 5、根据所选的查询条件动态组合SQL语句 6、用数据库表中的指定列值初始化checkListBox控件 7、利用循环将查询结果赋给含checkBox列dataGridView 8、根据dataGridView...

    UNIX操作系统教程 张红光

    Window编程环境介绍295 14.2数据检索加工工具awk296 14.2.1awk基本描述296 14.2.2awk中的...小结303 习题303 附录AUNIX系统中的常用系统调用304 附录BLinux系统中的C环境308 附录CUNIX/Linux常用命令314 参考文献...343

    Windows驱动开发技术详解的光盘-part1

     3.3.5 VC编译小结  3.4 查看调试信息  3.4.1 打印调试语句  3.4.2 查看调试语句  3.5 手动加载NT式驱动  3.6 编写程序加载NT式驱动  3.6.1 SCM组件和Windows服务  3.6.2 加载NT驱动的代码  3.6.3 ...

    大型门户网站实现的十四大技术小结

    基于网络爬虫的有效URL缓存> 三、生成静态文件 比如说,一个首页可能会员由多个部分组成,每个模块生成一个静态文件,然后才用服务器端包含SSI技术进行组装,其默认的后缀是.shtml 四、静态文件分布存储于独立的...

    WinRAR_4.0.exe

    在 c:\*.rar 压缩文件中的 *.txt 文件执行区分大小写的 "first level" 字符串的搜索 2) rar ih=f0e0aeaeab2d83e3a9 -r e:\text 在 e:\text 目录下的 rar 压缩文件中搜索十六进制字符串 f0 e0 ae ae ab 2d 83...

    QTP技术集锦--总结

    15. QTP中Wait与同步点的区别 41 16. QTP tips 41 17. Action 调用 45 18. Action 参数调用 47 19. QTP中根据日期计算年龄的解决办法 48 20. 测试报告知多少 48 21. 调用共享文件 49 22. 识别grid中的button 52 23. ...

    UNIX环境高级编程(第二版中文)

    4.24 文件访问权限位小结 106 4.25 小结 106 习题 107 第5章 标准I/O库 109 5.1 引言 109 5.2 流和FILE对象 109 5.3 标准输入、标准输出和标准出错 110 5.4 缓冲 110 5.5 打开流 112 5.6 读和写流...

    unix环境编程电子书

    575 20.9 性能 598 20.10 小结 600 习题 601 第21章 与网络打印机通信 603 21.1 引言 603 21.2 网络打印协议 603 21.3 超文本传输协议 605 21.4 打印假脱机技术 605 21.5 源代码 607 21.6 小结 ...

    UNIX环境高级编程

    4.24 文件访问权限位小结 106 4.25 小结 106 习题 107 第5章 标准I/O库 109 5.1 引言 109 5.2 流和FILE对象 109 5.3 标准输入、标准输出和标准出错 110 5.4 缓冲 110 5.5 打开流 112 5.6 读和写流...

Global site tag (gtag.js) - Google Analytics