rsync+inotfiy文件同步

简介: rsync+inotfiy文件同步

阅读目录

                                  rsync+inotfiy文件同步

1.部署rsync服务

yum install rsync  #安装rsync,如果嫌yum版本过低也可以源码安装

2.vim /etc/rsyncd.conf #默认rsync没有配置文件,创建一个,文件中#和汉字仅为注释,使用中请将所有注释清除

#Rsync server
uid = root
gid = root
use chroot = no                         # 安全相关
max connections = 2000                  # 并发连接数
timeout = 600                           # 超时时间(秒)
pid file =/var/run/rsyncd.pid           # 指定rsync的pid目录
lock file =/var/run/rsync.lock          # 指定rsync的锁文件【重要】
log file = /var/log/rsyncd.log          # 指定rsync的日志目录
ignore errors                             #忽略一些I/O错误
read only = false                       #设置rsync服务端文件为读写权限
list = false                            #不显示rsync服务端资源列表
hosts allow = 10.1.0.0/16               #允许进行数据同步的客户端IP地址,可以设置多个,用英文状态下逗号隔开
hosts deny = 0.0.0.0/32                 #禁止数据同步的客户端IP地址,可以设置多个,用英文状态下逗号隔开
auth users = rsync_backup               #执行数据同步的用户名,可以设置多个,用英文状态下逗号隔开
secrets file =/etc/rsync.password       #用户认证配置文件,里面保存用户名称和密码
#################################################
[www]                                   # 模块 
comment = www 
path = /data/www/
#################################################
[bbs]
comment = bbs
path = /data/bbs/
#################################################
[blog]
comment = blog
path = /data/blog/
#rsync_config____________end
:wq!  #保存,退出

3、创建用户认证文件

echo  "rsync_backup:123456">/etc/rsync.password  #配置密码文件

4、设置文件权限

chmod 600 /etc/rsync.password  

5.启动守护进程,并写入开机自启动

rsync --daemon

vim /etc/rc.local

# rsync server progress

/usr/bin/rsync --daemon

6.创建相关待同步的目录

mkdir -p /data/{www,bbs,blog}

 

#rsync客户端配置

1.安装rsync,方法同上

2.创建rsync配置文件,客户端创建即可,无需内容

touch  /etc/rsyncd.conf

3.配置rsync客户端相关权限认证:

echo "123456">/etc/rsync.password

chmod 600 /etc/rsync.password

4.创建待同步数据,在客户端创建一些数据

mkdir -p /data/{www,bbs,blog}

touch /data/www/www.log /data/bbs/bbs.log  /data/blog/blog.log

5.测试rsync是否同步

rsync  -avzP /data/www/ rsync_backup@172.16.1.25::www/   --password-file=/etc/rsync.password

#此步骤必须成功才能进行下一步

yum install inotify-tools #安装inotify

echo 50000000 > /proc/sys/fs/inotify/max_user_watches

echo 327679 > /proc/sys/fs/inotify/max_queued_events

6.编写inotify脚本

vim rsync.sh
[root@lb02 www]# vim /root/rsync.sh 
#!/bin/bash 
srcdir='/data/www/'
dstdir='www'
dstip="10.1.1.250"
user=rsync_backup
/usr/bin/inotifywait   -mrq  --timefmt '%d/%m/%t %H:%M' --format '%T %w%f%e' -e close_write,modify,delete,create,move $srcdir | while read file
do
    for ip in $dstip
        do
            cd $srcdir
            rsync  -avzP --progress --delete $srcdir  $user@$dstip::$dstdir   --password-file=/etc/rsync.password
            echo " $file " >> /tmp/rsyncd.log 2>&1
        done
done

chmod +x rsync.sh

./rsync.sh #启动inotify

 

回到顶部

几种同步方法:

Rsync –anH 本地目录 远程IP:具体目录(回车之后提示输入root密码,相当于拷贝)

例如:

Rsync –avH /usr/local/src 192.168.0.2:/bak/test/  -》把src整个目录拷到test内

Rsync –avH /usr/local/src/ 192.168.0.2:/bak/test/  ->把src目录内的所有文件拷贝到test内

Rsync –anH 远程IP:具体目录  本地目录—>远程同步到本地,需要root密码

Rsync –anH rsync用户@IP::模块 本地目录  -->从服务器模块同步到本地目录

注:配置常见问题及解决办法:http://blog.chinaunix.net/uid-26569333-id-3067813.html

相关文章
|
6月前
|
Shell 开发工具 数据安全/隐私保护
Rsync 文件同步原理及部署
Rsync 文件同步原理及部署
54 0
|
网络安全 数据安全/隐私保护 Windows
|
存储 监控 安全
|
监控 Shell 开发工具
文件同步rsync
rsync 远程同步 rsync(remote sync) 备份 完全备份 增量备份(差异备份) rsync 优点: 支持增量备份 选择性保持:符号链接,硬链接,文件属性,权限及时间等。
1291 1
|
监控 Linux 数据安全/隐私保护
rsync+sersync实现服务器文件同步
集群件服务器或者是多台服务器之间有数据同步需求的时候,要使多台服务器之间的数据快速同步,使用手动拷贝或者scp这样的命令是不太明智的,rsync+sersync组合工具可以解决这一痛点,快速的同步更新数据文件,减轻运维人员的工作压力。
4548 0
|
网络安全 数据安全/隐私保护 测试技术
|
安全 Linux 网络安全