文件备份同步工具(3)

(2)配置192.168.163.143

新建密码文件写上backup的密码即可,在修改权限: 

# cat /etc/server.pass 

RedHat123 

# chmod 600 /etc/server.pass 

 

开始同步指令如下: 

# rsync -vzrtopg --delete --progress --exclude "*access*" --exclude "debug*" backup@192.168.163.144::redhat /data --password-file=/etc/server.pass 

receiving file list ... 

4 files to consider 

created directory /data 

./                 

a.debug 

           0 100%    0.00kB/s    0:00:00 (xfer#1, to-check=2/4) 

a.test 

           0 100%    0.00kB/s    0:00:00 (xfer#2, to-check=1/4) 

test.a 

           0 100%    0.00kB/s    0:00:00 (xfer#3, to-check=0/4) 

 

sent 163 bytes  received 283 bytes  892.00 bytes/sec 

total size is 0  speedup is 0.00 

 

可以看到已经同步过来的3个文件 

 

-v:详细输出 

-z:传输时进行压缩 

-r:对子目录递归处理 

-t:保存文件时间信息 

-o:保存文件的属主 

-g:保持文件的属组 

-p:保持文件权限 

--delete:保持目录的一致性 

--progress:显示同步过程 

--exclude:排除不需要的文件 

backup@192.168.163.144::redhat:指定对144中的redhat模块以backup用户备份 

/data:备份到的目录 

--password-file:指定密码文件 

5、以上就配置完毕了,可以加到计划任务中,但是没法实时的同步,所以就有了rsync+inotify的搭建了

服务器A:192.168.163.144(rsync)

服务器B:192.168.163.143(rsync+inotify)

rsync的安装就不介绍了,直接在143上面装inotify:

# tar xf inotify-tools-3.14.tar.gz 

# cd inotify-tools-3.14 

# ./configure && make && make install 

之后143上写个脚本,如下:

# cat in.sh 

#!/bin/bash 

host1=192.168.163.144 

src=/data 

des1="redhat" 

user1="backup" 

/usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format  '%T %w%f'  -e modify,delete,create,attrib ${src} \ 

| while read  files 

do 

rsync -vzrtopg --delete --progress ${src}/ ${user1}@${host1}::${des1} --password-file=/etc/server.pass && 

echo "${files} was rsynced" >> /tmp/rsync.log 2>&1 

done 

 

# chmod 755 in.sh 

# /root/in.sh & 

之后在/data下新建文件,144上就会同步过来,相比而言是实时的,不过当有大量文件的时候系统性能的问题可想而知了。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/4bc63ed6f846186671389ce69cae6f7d.html