Rsync远程同步知识点总结
Rsync:
简介:是一个开源的快速备份工具、可以在不同主机之间镜像同步整个目录,支持增量备份,保持链接(硬链接、软连接)和权限,且采用优化同步算法,传输前执行压缩(传输过程中效率加快了,但是会增加cpu的负载)。
核心作用:
对静态数据进行增量备份。
以服务状态运行:负责发起rsync同步操作的称为发起端,负责响应rsync同步操作的称为同步源。
工作模式
本地模式(本地同步):使用方法类似于cp命令;
格式:rsync [选项] 源目录 目标目录
通过远程shell访问模式(远程同步):使用方法类似于scp命令;
格式:rsync [选项] 本地目录 IP:绝对路径
rsync [选项] IP:绝对路径 本地目录
守护进程模式:(将rsync作为一个同步服务启动,rsync作为一个守护进程在后台运行,时刻监听默认端口873)
格式:
1、rsync [选项] 本地目录 用户名@主机地址::共享模块名 (上传)
rsync [选项] 用户名@主机地址::共享模块 (下载)
2、rsync [选项] 本地目录 rsync://用户名@主机地址/共享模块名(上传)
rsync [选项] rsync://用户名@主机地址/共享模块名 本地目录(下载)
常用选项:(组合:-vzrtopg;-avz)
-a:归档模式,递归并保留对象属性,等同于-rlptgoD
-v:显示同步过程的详细信息;
-z:在传输文件时进行压缩;
-H:保留硬链接文件;
-A:保留ACL属性信息;
--delete:删除目标位置有而原始位置没有的文件;
--checksum:根据对象的校验和来决定是否跳过文件;
-r:递归模式,包含目录及子目录中所有文件;
-l:对于符号链接文件仍然复制为符号链接文件;
-p:保留文件的权限标记;
-t:保留文件的时间标记;
-g:保留文件的属组标记(仅超级用户使用);
-o:保留文件的属主标记(仅超级用户使用);
-D:保留设备文件及其他特殊文件
--bwlimlit=KBPS:限制传输速率;
注:使用rsync命令时,目录名后需要/,否则就是将目录同步过去了!
配置内容:进程文件的位置;日志文件的位置;设置端口号;模块设置;
rsync+inotify实时同步:
定期同步的不足:执行备份的时间固定,延迟明显,实时性差,当同步源长期不变化时,密集的定期任务是不必要的。
实时同步的好处:一旦同步源出现变化,立刻启动备份,如果同步源不发生变化,则不执行备份。
Linux内核的inotify机制:可以监控文件系统的变动情况,并作出通知响应;
辅助软件:inotify-tools
Inotifywait:用于持续监控,实时输出结果
Inotifywatch:用于短期监控,任务完成后再出结果
选项:-m:持续运行进程
-r:递归
-q:以简洁模式输出信息
-e:指定监控的动作类型(modify修改;create修改;move移动;delete删除,中间用逗号分隔)
格式:inotifywait -mrq -e modify,create,move,delete /var/www/html
实时同步脚本:
#!/bin/bash
# rsync+inotify实时同步脚本
#变量
INOTIFY_CMD="/usr/local/bin/inotifywait -mrq -e modify,create,attrib,move,delete /var/www/html/"
RSYNC_CMD="/usr/bin/rsync -azH --delete --password-file=/etc/server.pass /var/www/html/
backuper@192.168.100.101::wwwroot"
#read:从标准输入中,取值赋予变量
#脚本意思是只要后面这三个变量被赋值了,就执行$RSYNC_CMD
$INOTIFY_CMD | while read DIRECTORY EVENT FILE
do
if [ $(pgrep rsync | wc -l) -eq 0 ] ; then
$RSYNC_CMD
fi
done
后台执行脚本
nohup /bin/bash /opt/inotify.sh & // nohup 可以保证当前执行程序的用户登出当前系统后,当前程序不停止,仍然执行后台程序。
Rsync远程同步知识点总结的更多相关文章
- rsync 远程同步 实时同步备份 两种免交互的方式实现实时备份
rsync 远程同步: 一款快速增量备份工具 Remote Sync,远程同步 支持本地复制,或者与其他SSH.rsync主机同步 作用:做数据备份 备份方式: 完全备份 增量备份 ...
- rsync远程同步的基本配置与使用
rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份,镜像服务器等应用. rsync的官 ...
- 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命令要支持自动登 录还是要配置服务和参数,又不确定网上说的配置的行不行,因为都 ...
- rsync - 远程同步工具
一直没有对这个命令太有深入的理解 简介 rsync 即 remote sync,一个远程与本地文件同步工具.rsync 使用的算法能够最小化所需复制的数据,因为它只移动那些修改了的文件. rsync ...
- CentOS6.5使用rsync远程同步
需达成目标:在服务器(192.168.18.211)端搭建 rsync 服务, 将 /root/rsync-server/ 目录同步到客户端 /root/rsync-local 目录 Li ...
- [cmd] rsync - 远程同步工具
简介 rsync 即 remote sync,一个远程与本地文件同步工具.rsync 使用的算法能够最小化所需复制的数据,因为它只移动那些修改了的文件. rsync 是一个非常灵活的同步工具,它也是一 ...
随机推荐
- 浅谈Integer缓存机制原理
面试题引入 这里引申出一个经典问题,看下面代码 Integer a = 100; Integer b = 100; System.out.println(a == b);//true Integer ...
- 免费、开源、详细完整的unity游戏、游戏源码、教程:人工智能分析和处理对话的美好三维世界(定期更新)
这份unity游戏.游戏源码.教程:完全免费,完全开源,完整详细,通俗易懂,适合初学者入门,定期更新. 我不想和任何人说话,任何人不要跟我说话,不要打扰我,我要安安静静的写.我解释一下原因: 俗话说& ...
- java-GUI编程之布局类型介绍
java使用AWT和Swing相关的类可以完成图形化界面编程,其中AWT的全称是抽象窗口工具集(Abstract Window Toolkit),它是sun公司最早提供的GUI库,这个GUI库提供了一 ...
- 模N取余法实现大整数进制转换 ——C语言版(2-16进制均可)
思路如标题所说采用模N取余法,难点是这个除法过程如何实现. 个人推荐先到这篇博客学习一下,大佬的思路就是不一样:大数除法--超详细讲解 我所做的就是在上面博文代码的基础上增加了循环,用一个字符数组逆序 ...
- SimMTM: 用于掩码时间序列建模的简单预训练框架《SimMTM: A Simple Pre-Training Framework for Masked Time-Series Modeling》(预训练模型、时序表征学习、掩码建模、流行学习、近邻聚合、低级表示学习(掩码)、高级表示学习(对比)、segment-wise 和point- wise)
今天是2024年7月3日10:15,写一篇1月7日就看过的论文,哈哈哈哈哈哈哈哈哈,突然想到这篇论文了. 论文:SimMTM: A Simple Pre-Training Framework for ...
- CSS – Logical Properties
前言 续上一篇介绍了各种语言的阅读方向. 这一篇来讲一下 Logical Properties. 它与 left to right, right to left, horizontal, vertic ...
- RDK X5首发上手体验!真的太帅啦!!!
RDK X5首发上手体验!真的太帅啦!!! 本Blog同步发表于: 地瓜机器人开发者论坛: CSDN: 一年多以前无意中了解到了RDK X3,之后我便迅速的被地平线机器人开发者论坛(现在改名为了地瓜机 ...
- Go 学习路线图
基础阶段 学习内容: 掌握 Go 的基本语法,包括变量.常量.数据类型(如整数.浮点数.字符串.布尔值.数组.切片.映射等).运算符等. 理解程序的控制流,如条件语句(if-else.switch-c ...
- 使用 vite 配置目录别名
你是否被 ../ ../../ 这样的路径折磨的心力憔悴,如果你使用 vite 的话,不妨来试试 alias 命名目录吧. 安装 @types/node 来加载 path 模块 npm i @type ...
- Redis 发布订阅模式
概述 Redis 的发布/订阅是一种消息通信模式:发送者(Pub)向频道(Channel)发送消息,订阅者(Sub)接收频道上的消息.Redis 客户端可以订阅任意数量的频道,发送者也可以向任意频道发 ...