通过 lsyncd + rsync 同步文件
通过rsyncd实现将源服务器上的文件同步到目标服务器,通过lsyncd监控源服务器上的文件是否有变动,若有变动调用rsyncd服务对差异的文件进行同步。
0. lsyncd有三种同步文件的方式:
(1)rsync模式:不同主机间同步文件,文件的传递通过套接字传输,服务端启动rsyncd服务监听来自客户端的连接请求。
主机的一端安装lsyncd,另一端安装rsync,并启动为服务。
(2)rsyncssh模式:不同主机间同步文件,文件的传输通过ssh,服务端不必启动rsyncd服务,而是通过ssh创建子进程,然后调用rsync程序完成文件同步。
主机的一端安装lsyncd,另外一端安装rsync。
(3)direct模式:在同一台主机上同步文件,使用cp、mv等命令完成文件的同步。
主机上安装lsyncd即可。
本博客介绍第一种rsync模式的安装及配置。
1. 按下图所示在源和目标服务器上安装rsync和lsyncd程序包

2. 目标服务器上安装rsync,并配置
2.1. 安装rsync
$ yum -y install rsync
2.2 修改配置文件 /etc/rsyncd.conf
$ vim /etc/rsyncd.conf # 启用用户和密码验证,指定文件路径
secretsfile = /etc/rsync.pass [backup]
# 同步的目标路径
path = /nq/client # 授权那些源主机
hosts allow = 192.168.0.10,192.168.0.21 # 其它的禁止
hosts deny = * # 启动rsyncd服务的用户和组
uid = root
gid = root # 授权连接目标服务器的用户
auth users = rsync # 否则无法同步
read only = false
2.3 创建用户和密码文件,并修改权限为600
$ cat /etc/rsync.pass
rsync: $ chmod /etc/rsync.pass
2.4 启动服务
$ systemctl start rsyncd
3. 源服务器上安装rsync和lsyncd,并配置lsyncd
3.1 安装rsync
$ yum -y install rsync
3.2 安装lsyncd
$ yum -y install lsyncd
3.3 修改配置文件 /etc/lsyncd.conf
$ /etc/lsyncd.conf
settings {
-- 状态存放位置
statusFile = "/tmp/lsyncd.stat", -- 将lsyncd状态写入statusFile文件中的时间间隔
statusInterval = , --延迟时间
maxDelays = ,
} sync{
-- rsync, rsyncssh, direct 三种模式
-- rsync模式:不同主机间同步文件,文件的传递通过套接字传输,服务端启动rsyncd服务监听来自客户端的连接请求
-- rsyncssh模式:不同主机间同步文件,文件的传输通过ssh,服务端不必启动rsyncd服务,而是通过ssh创建子进程,然后调用rsync程序完成文件同步
-- direct模式:在同一台主机上同步文件,使用cp、mv等命令完成文件的同步。
default.rsync, -- 同步的源目录
source="/nq/server/", -- 目标地址
target="rsync@192.168.0.21::backup", -- 同步删除目标文件
delete = true, -- 哪些文件不同步
exclude = {".*"}, rsync = {
-- rsync路径
binary = "/usr/bin/rsync",
archive = true,
compress = true,
verbose = true,
-- 密码文件
password_file = "/etc/passwd.txt",
}
}
3.4 将密码存储于以下文件中,并设置权限为600
$ cat /etc/passwd.txt
123456
$ chmod 600 /etc/passwd.txt
参考文档
1. rsync原理
通过 lsyncd + rsync 同步文件的更多相关文章
- rsync 同步文件
rsync 同步文件 rsync -avz roo@192.168.4.12::/home/a ./a --exclude "data" exclude 去掉/a/data 文件 ...
- rsync 同步文件重复拷贝问题
rsync 是同步文件的利器,一般用于多个机器之间的文件同步与备份,同时也支持在本地的不同目录之间互相同步文件.在这种场景下,rsync 远比 cp 命令更加合适,它只会同步需要更新的文件,默认情况下 ...
- 使用rsync同步文件
rsync是Unix/Linux下同步文件的一个高效算法,它能同步更新两处计算机的文件与目录,并适当利用查找文件中的不同块以减少数据传输.关于rsync的核心算法,有兴趣的看下这篇文章. 这里介绍一下 ...
- Windows服务器之间rsync同步文件
两台windows7机器 server:192.168.12.104 client:192.168.12.103 目的:将server上的E盘的目录FYFR里面的内容定时同步到client上的D盘下F ...
- Git版本控制,rsync同步文件,完成线上部署
之前项目开发完成,测试阶段,借着此时,由于公司暂时用两台aliyun ecs 做业务层,所以每次都需要同步线上文件,进而想着搞一搞服务器端(小公司,新项目,先小搞一把),搭建一套小的版本控制上线的 ...
- rsync同步文件
rsync中的参数 -r 是递归 -l 是链接文件,意思是拷贝链接文件:-p 表示保持文件原有权限:-t 保持文件原有时间:-g 保持文件原有用户组:-o 保持文件原有属主:-D 相当于块设备文件: ...
- rsync同步文件到远程机器,卡住10多秒--问题解决过程
背景 以前大体介绍过,我们这边是做运维平台的.如果要形象化理解,那么,比如jenkins这种喜闻乐见的软件大致了解吧,jenkins就经常需要同步文件/版本包到远程机器上,jenkins怎么实现的,没 ...
- 【Linux】rsync同步文件 & 程序自启动
rsync使用 1. 为什么使用rsync? rsync解决linux系统下文件同步时, 增量同步问题. 使用场景: 线上需要定时备份数据文件(视频资源), 使用rsync完成每天的增量备份. 参见: ...
- linux命令:rsync, 同步文件和文件夹的命令
Usage: rsync [OPTION]... SRC [SRC]... DEST or rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST or ...
随机推荐
- PL/SQL之异常
异常分为预定义异常和用户自定义异常.预定义异常是由系统定义的异常.由于他们已在STANDARD包中预定义了,因此,这些预定义异常可以直接在程序中使用,而不用在预定义部分声明.而用户自定义异常则需要在定 ...
- [javaSE] GUI(图形用户界面)
java为gui提供的对象都在java.Awt和javax.Swing包中 Awt:抽象窗口工具包,依赖平台,调用系统的本地方法 Swing:完全由java实现的轻量级工具库 eclipse官方封装了 ...
- IDEA设置类注解和方法注解(详解)
从eclipse工具到IDEA工具的转化,发现IDEA工具配置注释模板变的不一样了,不说废话了,直接开始 一.设置类注解模板(在创建类的时候自动填充模板) /** * @ProjectName: ${ ...
- Influxdb的存储引擎
创建Influxdb数据库时,我们可以看到下面选项,每个选项的含义就是本文要描述的: Influxdb内部数据的存储可以使用不同的存储引擎.当前0.8.7版本支持的是LevelDB, RocksDB, ...
- 浏览器同源策略与ajax跨域方法汇总
原文 什么是同源策略 如果你进行过前端开发,肯定或多或少会听说过.接触过所谓的同源策略.那么什么是同源策略呢? 要了解同源策略,首先得理解“源”.在这个语境下,源(origin)其实就是指的URL.所 ...
- 单点登录-SSO
单点登录 (Single Sign-On ) 1.同域单点登录 登录的时候,设置cookie的域即可. 2.跨域单点登录 重点是,如何在浏览器端保存登录的标识. 祭图:(脑补) 三个系统: a.aaa ...
- UNIX 网络编程笔记-CH2:TCP、UDP概貌
好久不读不用又忘得差不多了,还是感叹Richard Stevens真是太刁,25年前第一版. "Tcp state diagram fixed new" by Scil100. L ...
- 前端把html表格生成为excel表格
最近公司改后台管理系统.要求导出台账项目等等为excel表格,找半天还真有,他是通过query.table2excel.js 实现,原谅我原生不会弄这个当然大家有可以给我留言. <!DOCTYP ...
- 浏览器根对象window之history
1. history(H5) Window.history保存用户在一个会话期间的网站访问记录,用户每次访问一个新的URL即创建一个新的历史记录. 1.1 length 返回浏览器历史列表中的 URL ...
- Hadoop & Spark & Hive & HBase
Hadoop: http://hadoop.apache.org/docs/r2.6.4/hadoop-project-dist/hadoop-common/SingleCluster.html bi ...