rsync的远程同步

rsync与inotify_rsync与ssh和inotify三者结 

 

 

 

 

 




1rcync提高异地备份,快速,安全,高效  具有递增性传输

cpscp相比跟加快速 cp在复制传输时先统计文件大小在进行传输,所以速度比较慢

2负责发起rsync的同步操作叫发起源负责相应方为同步源

3:如何配置rsync的同步源如下:

创建 /etc/rsyncd.conf配置文件 自己手动创建

cd /etcvim rsyncd.conf 

rsync与inotify_rsync与ssh和inotify三者结_02 

为备份账号lxf创建数据文件 格式:账户:密码

vim /etc/rsyncd_users.db

rsync与inotify_rsync与ssh和inotify三者结_03 

由于账号是采用的明文存放,因此调整文件的权限,避免信息泄露

rsync与inotify_rsync与ssh和inotify三者结_04 

在这里我们采用rsync的独立监听的方式运行

启动命令:rsync --daemon

rsync与inotify_rsync与ssh和inotify三者结_05 

之前共享路径在/var/www/html下可以在当中创建文件1.txt 2.TXT同步到客户端进行验证:

rsync与inotify_rsync与ssh和inotify三者结_06 

客户端要同步资源有两种 方式

1rsync 【选项】用户名@IP::共享模块名  /客户端目录

2rsync 【选项】rsync//用户名@IP/共享模块名  /客户端目录

在这里我们使用第一种方式进行验证

rsync与inotify_rsync与ssh和inotify三者结_07 

这里是下行从rsync源下载到客户机,接下来上行从客户机到rsync源:首先在发起源(客户端)中创建pp.txt   aa.txt 文件上行到rsync源中,在这里需要给rsync的原路径一个可执行权限否则上行不成功

rsync同步源配置

rsync与inotify_rsync与ssh和inotify三者结_08 

rsync发起源配置上行如下:(客户端)

rsync与inotify_rsync与ssh和inotify三者结_09

rsync同步源查看结果

rsync与inotify_rsync与ssh和inotify三者结_10 

4:配置rsync+inotify实时同步

作用:将rsync工具与inotify机制相结合,可以实现触发式备份(实时同步),只要原始位置的文档发生变化,则立即启动增量备份操作。

安装inotify-tools用来监控和汇总改动

rsync与inotify_rsync与ssh和inotify三者结_11 rsync与inotify_rsync与ssh和inotify三者结_12

编译完之后产生两个命令 inotifywaitintifywatch

intifywatch 适用于短时间监控,而inotifywait适用于长时间监控

在这里使用inotifywait进行测试

rsync与inotify_rsync与ssh和inotify三者结_13 

-m:表示持续监控    -e:表示制定监控的那些事

-r: 表示递归整个目录  -q:简化输出信息

5:由于日常工作每次要输密码不安全,而且效率低在这里,将结合ssh 服务进行配置:

首先配置ssh远程服务:在这里使用root用户进行远程,开启rsync源服务器的ssh服务

vim  /etc/ssh/sshd_config

rsync与inotify_rsync与ssh和inotify三者结_14rsync与inotify_rsync与ssh和inotify三者结_15 

启动ssh服务 service  sshd  restart

客户端开始配置密钥对ssh体系

1)首先创建密钥对

rsync与inotify_rsync与ssh和inotify三者结_16 

2)将密钥对的公钥上传到服务器端:

rsync与inotify_rsync与ssh和inotify三者结_17 

3)在服务器中导入公钥文本:

需要创建一个存放公钥的公钥库

cat /root/id_rsa.pub >> /root/.ssh/authorized_keys 也可使用cp

rsync与inotify_rsync与ssh和inotify三者结_18 

4)验证是否可以ssh链接不用输入密码rsync与inotify_rsync与ssh和inotify三者结_19

6:现在可以配合rsyncssh结合一起使用:

如:从rsync同步源下行文件 ppt.txt

rsync与inotify_rsync与ssh和inotify三者结_20 

7:如果实现自动话执行可编写脚本

vim  abc.sh

rsync与inotify_rsync与ssh和inotify三者结_21 

chmod +x abc.sh添加执行权限

sh -n abc.sh 查看语法错误

sh  abc.sh 运行脚本