1.scp命令
scp命令是Linux远程复制文件的命令,使用格式为:scp-r远程主机用户名@IP:数据目录或文件需要复制到的本地d的目录,-r参数是复制目录用的如果只是文件可以不用加,比如:scp-rroot@192.168.1.100:/opt/data/home/data/
在其中5台机器上执行,写成shell脚本,然后加上crontab定时任务就可以了。
2.利用rsync
推荐使用此方法,开源镜像服务站就是使用rsync同步的,因为rsync可以实现增量同步,在上传文件的那台机器配置rsync服务端,其余的机器配置rsync客户端,配合crontab,实现实时同步服务端的数据。
- rsync功能
- 作为命令,实现本地-远程文件同步
- 作为服务,实现本地-远程文件同步
- rsync特点
- 可以镜像保存整个目录树和文件系统
- 可以保留原有的权限(permission,mode),owner,group,时间(修改时间,modifytime),软硬链接,文件acl,文件属性(attributes)信息等
- 传输效率高,使用同步算法,只比较变化的
- 支持匿名传输,方便网站镜像;也可以做验证,加强安全
- rsync同类服务
- sync同步:刷新文件系统缓存,强制将修改过的数据块写入磁盘,并且更新超级块。
- async异步:将数据先放到缓冲区,再周期性(一般是30s)的去同步到磁盘。
- rsync远程同步:remotesynchronous