测试系统:centos5.5

服务端:192.168.1.210   rsync+inotify

客户端:192.168.1.211

1、软件安装

yum -y install rsync

tar zxvf inotify-tools-3.14.tar.gz

cd inotify-tools-3.14

make

make install

 

 

2、配置ssh免密码登陆,作用是rsync传输时不需要输入密码

服务端:

ssh-keygen -t rsa (连续三次回车,即在本地生成了公钥和私钥,不设置密码)

把服务端生成的公钥id_rsa.pub放在客户端上,注意要放在用户的主目录下的.ssh目录里面,并改名为:authorized_keys

尝SSH登

 ssh 192.168.1.211

第一次登陆会提示是否记住连接,输入Y之后,就正常连接过去

 

3、同步脚本

在服务端运行

   
   
   
   
  1. #!/bin/bash  
  2.  
  3. src=/opt/tongbu/  
  4. des=/opt/tongbu/  
  5. ip=192.168.1.211  
  6.  
  7. /usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y-%H:%M' --format '%T %w%f' -e modify,move,delete,create,attrib ${src} | while read file  
  8. do  
  9.   /usr/bin/rsync -avz --delete --progress $src root@$ip:$des  
  10. done  
  11.  
  12.    

运行脚本后,服务端目录就可以和客户端目录同步