rsync同步服务实验讲解
rsync 同步服务
复制: 源所有数据
同步: 只传输变化数据
• 命令用法
– rsync [选项...] 源目录 目标目录
• 本地同步
– rsync [选项...] 本地目录1 本地目录2
– rsync [选项...] 本地目录1/ 本地目录2
[root@svr7 ~]# mkdir /todir
[root@svr7 ~]# rsync -a /boot /todir //同步整个文件夹
[root@svr7 ~]# rsync -a /boot/ /todir/ //只同步目录下的数据
• rsync操作选项
– -n:测试同步过程,不做实际修改
– --delete:删除目标文件夹内多余的文档
– -a:归档模式,相当于-rlptgoD
– -v:显示详细操作信息
– -z:传输过程中启用压缩/解压
##########################################
[root@svr7 /]# rm -rf /opt/
[root@svr7 /]# rm -rf /mnt/
[root@svr7 /]# cp /etc/passwd /opt
[root@svr7 /]# touch /opt/1.txt
[root@svr7 /]# ls /opt/
[root@svr7 /]# ls /mnt/
[root@svr7 /]# rsync -avz /opt/ /mnt
[root@svr7 /]# ls /opt/
[root@svr7 /]# ls /mnt/
[root@svr7 /]# touch /opt/2.txt
[root@svr7 /]# rsync -avz /opt/ /mnt
[root@svr7 /]# ls /opt/
[root@svr7 /]# ls /mnt/
######################################################
--delete : 删除目标路径比源目录多余的文档
[root@svr7 /]# rsync -avz --delete /opt/ /mnt
[root@svr7 /]# ls /opt/ /mnt
[root@svr7 /]# touch /mnt/nsd.txt
[root@svr7 /]# ls /opt/ /mnt
[root@svr7 /]# rsync -avz --delete /opt/ /mnt
[root@svr7 /]# ls /opt/ /mnt
#####################################################
远程同步 rsync+ssh
• 服务端要求
– 开启sshd服务,并提供授权的用户、密码
命令格式:
rsync 选项 /路径/目录/ 用户名@对方IP地址:/路径/对方目录
rsync 选项 用户名@对方IP地址:/路径/对方目录/ /路径/目录/
虚拟机A:
rsync -avz --delete /opt/ root@192.168.4.207:/mnt/
虚拟机B:
ls /mnt
######################################################
实时的远程同步
虚拟机A:
rsync -avz --delete /opt/ root@192.168.4.207:/mnt/
虚拟机B:
ls /mnt
一 公钥 私钥 实现的虚拟机A与虚拟机B 验证同步 无需密码
1.虚拟机A生成公钥 私钥
[root@svr7 /]# ssh-keygen #一路回车
[root@svr7 /]# ls /root/.ssh/
[root@svr7 /]# ssh-copy-id root@192.168.4.207 #拷贝公钥
[root@svr7 /]# ssh root@192.168.4.207
[root@pc207 ~]# exit #退出到B
二 安装一个软件,实时监控一个目录内容,有变化会报告
步骤1:将该inotify-tools-3.13.tar.gz上传 虚拟机A
真机上操作:
scp /root/桌面/tools/inotify-tools-3.13.tar.gz root@192.168.4.7:/root/
步骤2:安装gcc和make开发工具
[root@svr7 /]# yum -y install gcc make
步骤3:tar解包,释放源代码至指定目录
tar -xf /root/inotify-tools-3.13.tar.gz -C(大写) /opt/
ls /opt/
步骤4: ./configure 配置,指定安装目录/功能模块等选项
cd /opt/inotify-tools-3.13/
# ./configure
步骤5:make 编译,生成可执行的二进制程序文件
make
步骤6:make install 安装,将编译好的文件复制到安装目录
make install
# which inotifywait
# ls /usr/local/bin/inotifywait
#############################################
inotifywait监控
• 基本用法
– inotifywait [选项] 目标文件夹
• 常用命令选项
– -m,持续监控(捕获一个事件后不退出)
– -r,递归监控、包括子目录及文件
– -q,减少屏幕输出信息
– -e,指定监视的 modify、move、create、delete、attrib事件类别
inotifywait------> while
rsync -avz --delete /opt/ root@192.168.4.207:/mnt/
最容易形成死循环
while [条件判断]
do
循环执行语句
done
[root@svr7 /]# vim /root/1.sh
#!/bin/bash
i=0
while [ $i -le 10 ]
do
i=expr $i + 1
echo $i
done
[root@svr7 /]# chmod +x /root/1.sh
[root@svr7 /]# /root/1.sh
#################################################
三 书写实时同步的脚本
[root@svr7 /]# vim /root/rsync.sh
#!/bin/bash
dir=/opt/
while inotifywait -rqq $dir
do
rsync -az --delete $dir root@192.168.4.207:/mnt/
done
[root@svr7 /]# chmod +x /root/rsync.sh
[root@svr7 /]# /root/rsync.sh
######################################################
DNS的分离解析(视图解析)
• 当收到客户机的DNS查询请求的时候
– 能够区分客户机的来源地址
– 为不同类别的客户机提供不同的解析结果(IP地址)
不同的客户端区解析同一个域名,解析结果不同
前提: 客户端的分类要合理 , 所有的客户端都要找到自己的分类
一旦使用view功能,所有的zone都必须在view中
view "haha" {
match-clients { 192.168.4.7; }
zone "12306.cn" {
......12306.cn.zone;
}; };
view "xixi" {
match-clients { any; }
zone "12306.cn" {
...... 12306.cn.abc
}; };
客户端192.168.4.207---->www.tedu.cn----->1.1.1.1
客户端非192.168.4.207---->www.tedu.cn----->2.2.2.2
options {
directory "/var/named";
};
view "haha" {
match-clients { 192.168.4.207; };
zone "tedu.cn" IN {
type master;
file "tedu.cn.haha";
};
};
view "xixi" {
match-clients { any; };
zone "tedu.cn" IN {
type master;
file "tedu.cn.xixi";
};
};
– 根据view调用的顺序,“匹配即停止”
转载于:https://blog.51cto.com/13590322/2068225
rsync同步服务实验讲解相关推荐
- rsync同步服务配置手记
Rsync在推送或抓取数据时,在rsync客户端会出现性能问题, 负载比较大且数据量比较大的生产环境要注意这一点. 本文只是个人平时配置示例,可以简单修改后用于实际环境使用,rsync不仅可以实现服务 ...
- rsync同步服务部署
#!/bin/bash #rsync no system user #xinetd rsync(873) #server #/root/ #读取文件记录集 function ReadLine() {c ...
- Rsync数据同步服务
Rsync数据同步服务 Rsync软件适用与unix/linux/windows等多种操作系统平台 Rsync是一款开源的,快速的,多功能的,可实现全量及增量的本地或远程数据同步备份的优秀工具,可以实 ...
- rsync通过服务同步、linux系统日志、screen工具
rsync通过服务同步 /etc/rsyncd.conf是rsync的默认配置文件,该配置文件不存在,需要编辑内容 主服务器上的操作: 1.[root@test rsync]# cat /etc/rs ...
- Linux CentOS7 rsync通过服务同步、linux系统日志、screen工具
一.rsync通过服务同步 rsyncd.conf配置文件详解 port:指定在哪个端口启动rsyncd服务,默认是873端口. log file:指定日志文件. pid file:指定pid文件,这 ...
- 三十六、rsync通过服务同步、Linux系统日志、screen工具
三十六.rsync通过服务同步.Linux系统日志.screen工具 一.rsync通过服务同步 该方式可以理解为:在远程主机上建立一个rsync的服务器,在服务器上配置好各种应用,然后本机将作为客户 ...
- rsync通过服务同步、linux日志、screen工具
rsync通过服务同步 rsyncd.conf样例 port=873 log file=/var/log/rsync.log pid file=/var/run/rsyncd.pid address= ...
- 10.32/10.33 rsync通过服务同步 10.34 linux系统日志 10.35 scre
10.32/10.33 rsync通过服务同步 10.34 linux系统日志 10.35 screen工具 转载于:https://blog.51cto.com/13227377/2116350
- Linux下实现文件实时同步(rsync命令+rsync作为服务+xinetd托管rsync)
文章目录 一.rsync概念 1. 什么是rsync 2. rsync的特点 3. rsync和scp的区别 二.rsync用法 1. 基本语法 2. 本机同步 1) -R(保留相对路径) 2)- - ...
最新文章
- linux watch命令
- 以下哪个选项不能减少用户计算机,2012年计算机二级Access第十二套单选练习题及答案...
- docker删除已经停止的容器
- Pytorch 怎么构建自己的数据集。怎么重写官方数据集。
- 计算机一级ppt难点,计算机一级复习.ppt
- 卸载unixodbc_完全卸载旧的unixODBC并在redhat 6.3中安装2.3.2 unixODBC
- 1.单机部署hadoop测试环境
- bootstrap-table 行合并和列合并,以及固定列宽度等问题
- raspberry pi_如何进行Raspberry Pi聚会
- ueditor上传图片回调_springboot+mybatis+oss整合ueditor
- 【Mybatis】foreach标签在mybatis中的使用
- 最详细的Android SDK下载安装及配置教程
- 轻松学,听说你还没有搞懂 Dagger2
- OFDM通信链路仿真加噪声方法总结
- shell 中 if[X$1 = X];then 什么意思
- 顶点式超级计算机吗,有没有数学解题软件
- RGB565部分常用颜色对照表
- python最小二乘法_最小二乘法(least sqaure method)
- 学习SQL的侦探游戏
- 达梦数据交换平台软件DMETL部署
热门文章
- 加州最新无人驾驶出租车报告:PonyAI单车运营效率超Waymo
- 20年的人工智能设计总结:向产品中注入人工智能的指南
- 华为即将发布AI新品,发力“深度学习”
- 出行公司集体亮剑 自动驾驶花落谁家?
- 【风之语】至贱城市之苏州
- 业界丨2018年人工智能和机器学习路在何方? 看看美国公司准备怎么做
- 《数学之美》第12章 有限状态机—地图与本地搜索的核心技术
- pip 或者conda 下载安装torch-{cluster,geometric,scatter,sparse,spline-conv}的时候报错
- 马斯克:今年占全球发射质量65%,星舰5月或首次轨道试飞
- 听完411头猪的哼哼,他们找到了理解“猪语”的算法 | Scientific Reports