服务-rsync

来源:互联网 发布:2017年黄金周旅游数据 编辑:程序博客网 时间:2024/05/22 08:08
sync:同步async:异步rsync:远程同步数据同步方式:1、rsync2、共享存储3、云存储123、软件三步曲# rpm -ql rsync/etc/xinetd.d/rsync  子配置文件/usr/bin/rsync  二进制命令4、了解配置文件5、需求:rsync不作为一个服务使用,只是用rsync命令来同步数据rsync — a fast, versatile, remote (and local) file-copying tool-a:归档拷贝   等于 -rlptgoD (no -H,-A,-X)-r:递归拷贝目录-l:保留软连接-p:保留权限信息-t:保留修改时间-g:保留属组-o:保留属主-D:表示支持b,c,s,p类型文件-R:保留相对路径-H:保留硬链接-A:保留acl策略-e:指定执行shell命令-E:保留可执行权限-X:保留扩展属性 a属性demo1:本地同步rsync -av /dir1 /dir2/   ——>   /dir1    同步过去后将保留源目录的目录rsync -av /dir1/ /dir2/  ——> /dir1/ 同步过去后不保留源目录的目录rsync -Rav /dir1/ /dir2/  ——> -R 不管有没有“/”都会保留源目录demo2:远程同步vm1:/dir1vm2:/dir2从本地将文件同步到远程rsync -av /dir1/ 10.1.1.2:/dir2/rsync -Rav /dir1 10.1.1.2:/dir2/从远程将文件同步到本地rsync -av 10.1.1.1:/dir1 /dir2# rsync -av /dir1/ stu1@10.1.1.2:/dir2/# rsync -av /dir1/ -e 'ssh -p10022 -lstu1' 10.1.1.2:/dir2demo3:只允许10.1.1.2主机在指定的时间内同步数据思路:1、rsync作为服务去运行2、通过配置文件可以完成访问控制步骤:1、创建配置文件 /etc/rsyncd.confvim /etc/rsyncd.conf以下是全局选项:       uid = xx       gid = xxx       use chroot = yes       max connections = 4       syslog facility = local5       pid file = /var/run/rsyncd.pid       motd file = file 指定一个消息文件[share] 局部标签,可以定义需要共享的文件路径path = /dir1  真正共享的路径comment = xxx 描述2、重启xinetd服务3、测试验证vm2:rsync -av 10.1.1.1::  发现远程主机所共享的共享名rsync -av 10.1.1.1::share /dir2  同步允许10.1.1.2主机访问:# cat rsync ...    only_from   = 10.1.1.2    access_times    = 10:00-18:00...demo4:密码同步# cat /etc/rsyncd.conf motd file = /etc/rsync.mes[share]path = /dir1secrets file = /etc/rsync.secauth  users = u1,u2# chmod 600 /etc/rsync.sec课堂练习:在上面的基础上增加一些功能:1、把日志记录到/var/log/rsyncd.log文件 2、隐藏共享模块3、同时只能1个客户端连接进行同步该模块4、只允许10.1.1.2和你的物理机同步该模块5、只能早上9点到下午6点同步man 5 rsyncd.conf思考:如果源端有文件删除,那么目标端怎么办?参考:1、关于日志记录有以下4种方法/etc/xinetd.d/rsynclog_type = file /var/log/rsyncd.log或者log_type = syslog local0vim /etc/rsyslog.conflocal0.*    /var/log/rsyncd.log/etc/rsyncd.conflog file = /var/log/rsyncd.log或者syslog facility = local0vim /etc/rsyslog.conflocal0.*    /var/log/rsyncd.log2、list = false3、max connections = 14、hosts allow = 10.1.1.2 10.1.1.2545、vim /etc/xinetd.d/rsyncrsync+inotify架构实现实时同步:vm1:10.1.1.1share:/dir1步骤:1、vim /etc/rsyncd.conf[share]path = /dir12、vim /etc/xinetd.d/rsync...disable = no3、service xinetd restart4、安装第三方软件tar -xf inotify-tools-3.13.tar.gz -C /usr/src/cd /usr/src/cd inotify-tools-3.13/./configure makemake install5、了解该软件带来哪些命令inotifywait --help-m:-q:-r:-e:....6、根据需求编写监控目录的脚本需求:当vm1的/dir1目录删除、创建文件、修改文件等操作时需要实时同步到vm2的/dir2目录里vim /tmp/inotify.sh#!/bin/bash/usr/local/bin/inotifywait -mrq -e create,delete,move,modify,attrib /dir1 |while read eventsdorsync -av --delete /dir1 10.1.1.2::dir echo "date +'%F %T' 发生了$events" >> /tmp/inotify.logdonevm2:10.1.1.2/dir21、vim /etc/rsyncd.conf[dir]path = /dir22、vim /etc/xinetd.d/rsyncdiable = no3、service xinetd restart测试验证:课后了解sersync+rsync架构如果需要双向实时同步怎么办?
0 0
原创粉丝点击