rsync数据同步
rsync目的是实现本地主机和远程主机上的文件同步(包括本地推到远程,远程拉到本地两种同步方式),也可以实现本地不同路径下文件的同步
语法
本地复制到远程
rsync -r 本地文件路径 user@Host:远程文件路径
远程复制到本地
rsync -r user@Host:远程文件路径 本地文件路径
注:使用rsync一定要注意的一点是,源路径如果是一个目录的话,加反斜杠和不加反斜杠是不一样的,不带反斜杠表示的是整个目录包括目录本身,带上结尾反斜杠表示的是目录中的文件,不包含目录本身
例如
rsync -r /etc /tmp
rsync -r /etc/ /tmp
第一个命令会在/tmp目录下创建etc目录,而第二个命令不会在/tmp目录下创建etc目录,源路径/etc/中的所有文件都直接传到/tmp目录下
配合crontab数据自动同步
编写脚本sync.sh
编写sync.sh 每2秒同步一次
#!/bin/bash
step=2 #间隔的秒数不能大于60
for ((i=0;i<60;i=(i+step) )); do
reync -r 本地路径 root@ip:远程路径
sleep $step
done
exit 0
执行shell脚本即可