rsync远程同步的基本配置与使用

rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份,镜像服务器等应用。
rsync的官方站点是http://rsync.samba.org/,目前最新版本是3.1.1,由Wanyne Davison进行维护。作为一种最常用的文件备份工具,rsync往往是Linux和UNIX系统默认安装的基本组件之一。
1、rsync:快速增量备份工具,实现远程同步,可使用ssh和rsync备份
rsync服务器:备份源,提供一个目录供客户端上传或下载
2、rsync的配置:
建立rsync的配置文件:/etc/rsyncd.conf
use chroot=yes 禁锢在源地址
port 837 默认端口号为873
pid file 进程号文件位置
hosts allow 允许访问客户机地址
[wwwroot] 共享名
path=/路径 真正的文件夹位置
comment= 描述
read only=yes|no 只读|读写
auth users=用户名 认证的用户
secrets file=文件名路径 验证文件
验证文件格式: 用户名:密码
权限必须设置为600
3、管理rsync服务:
启动:rsync --daemon
停止:kill 进程号
4、rsync的使用
格式:rsync 选项 原始位置 目标位置
选项:-a:归档模式,等同于 -rlptgoD
-r:递归,包含目录
-p:权限(保留权限)
-t:时间
-z:压缩
-v:同步过程信息
--delete:删除目标位置有而原始位置没有的文件
5、备份源(服务器端)的表达方式:
1)用户名@服务器IP::共享名
例:benet@192.168.1.100::wwwroot
2)rsync://用户名@服务器IP/共享名
Rsync -avz benet@192.168.1.100::wwwroot /root
6、实现免交互模式:
1)创建密码文件并设置权限为600
2)同步时使用 --password-file=文件名 的方式指定文件位置
7、实时同步:有变化则备份,无变化不备份
通过inotify机制实现,实时监控本地文件系统目录的变化,并作出通知响应,适当调整监控文件数量
inotify-tools辅助工具,有两个命令:
inotifywait:持续监控,实时输出结果
inotifywatch:短期监控,完成后输出结果
格式:inotifywait -mrq -e 监控事件类型 /监控目标
-m:持续监控 -r:监控整个目录
-q:简化输出 -e:监控事件类型
类型有:modify(修改) create(创建) move(移动)
delete(删除) attrib(属性更改)
以上便是rsync的基本使用方法了,rsync远程同步实验案例请关注微信公众号 L宝宝聊IT 浏览“rsync远程同步示例”文章进行查阅。
rsync远程同步示例

实验要求:
(1)如图所示,搭建网络,配置地址。
(2)在1.10服务器上配置为服务端,修改rsync的配置文件/etc/rsyncd.conf,并启动rsync服务程序。
(3)在1.20上使用rsync命令验证是否能够从服务端(/var/www/html)下载文件到客户机端(/myweb)。
(4)修改rsync的配置文件/etc/rsyncd.conf,实现客户机端(/myweb)能上传文件到服务端的(/var/www/html)位置。在客户机端验证。
(5)在1.20上实现每天晚上22:00对服务器的网站目录(/var/www/html)做一次同步。
(6)在1.20上配置rsync+inotify实时同步。通过编写脚本来实现,客户机能够实时上传文件到服务端。注意:需要安装inotify软件。
步骤:
1、 按照要求配置IP地址,实现可以互相ping通。

2、为备份账户创建数据文件(vim /etc/rsyncd_users.db)并赋予权限。


3、修改1.10服务器端的rsync配置文件/etc/rsyncd.conf,并启动rsync服务程序。(启动rsync服务:rsync --daemon)

4、使用1.20客户机测试能够从服务器端下载文件到/myweb
1) 在1.10的/var/www/html目录下创建一个文件。

2)在1.20客户机端创建目录/myweb,并同步下载服务器端的文件

3) 在客户机/myweb目录下查看是否同步,

5、修改rsync的配置文件/etc/rsyncd.conf,实现客户机端(/myweb)能上传文件到服务端的(/var/www/html)位置。在客户机端验证。
1)进入/etc/rsyncd.conf配置文件并修改。

2)重启rsync服务,需要先杀死再启动
keill $(cat /var/run/rsyncd.pid)
rsync --daemon
3)赋予/var/www/html目录相应的权限

4) 在客户机端/myweb目录下创建一个文件并验证是否能上传同步到服务器端。


5)到服务器端查看

6、在1.20上实现每天晚上22:00对服务器的网站目录(/var/www/html)做一次同步。
1) 创建一个zhangsan用户的密码文件/etc/server.pass,并赋予权限


2)创建计划任务,crontab -e ,并启动
00 22 * * * /usr/bin/rsync -az --delete --password-file=/etc/server.pass /myweb/ zhangsan@192.168.1.10::wwwroot

7、在1.20上配置rsync+inotify实时同步。通过编写脚本来实现,客户机能够实时上传文件到服务端。
1)配置/etc/sysctl.conf ,调整inotify内核参数

sysctl -p运行一下

3)安装inotify-tools

4)编写脚本vim /opt/test.sh

赋予脚本执行权限并执行
chmod +x /opt/test.sh

5)在打开一个控制台在客户机端/myweb下创建一个文件并到服务器端/var/www/html查看是否自动同步


文档参考微信公众号:L宝宝聊IT
rsync远程同步的基本配置与使用的更多相关文章
- rsync 远程同步 实时同步备份 两种免交互的方式实现实时备份
rsync 远程同步: 一款快速增量备份工具 Remote Sync,远程同步 支持本地复制,或者与其他SSH.rsync主机同步 作用:做数据备份 备份方式: 完全备份 增量备份 ...
- rsync数据同步工具的配置
rsync数据同步工具的配置 1. rsync介绍 1.1.什么是rsync rsync是一款开源的快速的,多功能的,可实现全量及增量的本地或远程数据同步备份的优秀工具.Rsync软件适用于 unix ...
- Rsync远程同步工具使用
rsync远程同步工具使用 Rsync(remote synchronize) 是一个远程数据同步工具,可以使用"Rsync算法"同步本地和远程主机之间的文件.Rsync的好处是只 ...
- hadoop(六)rsync远程同步|xsync集群分发(完全分布式准备三)|8
前置环境准备:centos7克隆ip|机器名|映射关系|别名配置(hadoop完全分布式准备一)scp命令copy文件和配置(hadoop完全分布式准备二) rsync远程同步工具 优点 rsync主 ...
- rsync 远程同步部署——上下行同步
rsync 远程同步部署--上下行同步 1.rsync (Remote Sync,远程同步) : 是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,并保持链接和权限,且采用 ...
- rsync远程同步
一.概念 Rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持连接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份,镜像服务器等应用.rsy ...
- linux下ssh远程登录/scp远程复制文件/rsync远程同步命令的自动登录
最近需要写一个脚本备份各个服务器上的程序到一个指定服务器上,本来以为查查rsync命令的使用321就能搞定,结果rsync命令要支持自动登 录还是要配置服务和参数,又不确定网上说的配置的行不行,因为都 ...
- Linux rsync 远程同步部署篇
rsync官网: www.samba.org/ftp/rsync.html端口:873上机实战系列项目100台规模集群全网数据备份解决方案3.本项目提供免费实战讲解视频:Linux集群全网服务器数据备 ...
- CentOS6.5使用rsync远程同步
需达成目标:在服务器(192.168.18.211)端搭建 rsync 服务, 将 /root/rsync-server/ 目录同步到客户端 /root/rsync-local 目录 Li ...
随机推荐
- RecyclerView的简单使用
使用 RecyclerView 要做下面这些操作, 1.在build.gradle添加 RecyclerView的依赖,因为RecyclerView不是内置在android系统中的,请注意版本要一致 ...
- Spring Boot + Spring Cloud 实现权限管理系统 后端篇(二十三):配置中心(Config、Bus)
在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 技术背景 如今微服务架构盛行,在分布式系统中,项目日益庞大,子项目日益增多,每 ...
- Spring Boot + Spring Cloud 构建微服务系统(八):分布式链路追踪(Sleuth、Zipkin)
技术背景 在微服务架构中,随着业务发展,系统拆分导致系统调用链路愈发复杂,一个看似简单的前端请求可能最终需要调用很多次后端服务才能完成,那么当整个请求出现问题时,我们很难得知到底是哪个服务出了问题导致 ...
- Spring Cloud简介
一.本文介绍 Web应用由最早的单体应用发展成为集群式的部署,再到现在的分布式系统.尤其是这两年分布式相关的技术发展的很快,一方面是以Dubbo为代表的,另一方面则是以Spring Cloud系列为代 ...
- VueJs开发笔记—IDE选择和优化、框架特性、数据调用、路由选项及使用
一.IDE的选择: VsCode和WebStorm都是不错的选择,说一下两者的优缺点,调试便捷性来说两者不相上下. WebStorm缺点:性能方面VsCode远好于WebStorm: WebStorm ...
- JWT 从入门到精通
什么是JWT Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点 ...
- TopK
网易面试挂了,伤心. 一面面试官不是搞技术的,二面面试官搞ios,全程不问JVM,并发的知识,运气真差 而且手撸代码硬伤,没得编译 准备先在IDE敲一遍,在再纸上面写一遍. package com.q ...
- 一个比较好用的省内存的ORM
http://www.52chloe.com 记录一下,完了,就这样
- Oracle入门《Oracle介绍》第一章1-4 Oracle 用户管理
1.Oracle 默认用户 只有用合法的用户帐号才能访问Oracle数据库 Oracle 有几个默认的数据库用户 数据库中所有数据字典表和视图都存储在 SYS 模式中.SYS用户主要用来维护系统信息和 ...
- [PHP] 算法-数组重复数字统计的PHP实现
在一个长度为n的数组里的所有数字都在0到n-1的范围内. 数组中某些数字是重复的,但不知道有几个数字是重复的.也不知道每个数字重复几次.请找出数组中任意一个重复的数字. 例如,如果输入长度为7的数组{ ...