当前位置: 首页 > news >正文

rsync同步的实现及其简单源码包的编译安装

虚拟机A
1. 将防火墙状态设置为trusted

2.SELinux当前修改为permissive
3.SELinux永久状态修改为permissive
4.清空Yum缓存,检查Yum是否可用

虚拟机B
1. 将防火墙状态设置为trusted

2.SELinux当前修改为permissive
3.SELinux永久状态修改为permissive
4.清空Yum缓存,检查Yum是否可用

/etc/selinux/config (永久状态配置文件)

########################################################

rsync同步操作
• 命令用法
– rsync [选项...] 源目录 目标目录

• 同步与复制的差异
– 复制:完全拷贝源到目标
– 同步:增量拷贝,只传输变化过的数据

• 本地同步
– rsync [选项...] 本地目录1 本地目录2 //同步整个文件夹

– rsync [选项...] 本地目录1/  本地目录2   //只同步目录下的数据

• rsync操作选项
– -n:测试同步过程,不做实际修改
– --delete:删除目标文件夹内多余的文档
– -a:归档模式,相当于-rlptgoD
– -v:显示详细操作信息
– -z:传输过程中启用压缩/解压

mkdir /abc
mkdir /test
cp /etc/passwd /etc/fstab /etc/shadow /etc/group /abc/

ls /abc/

ls /test
rsync -avz /abc /test
ls /test

rsync -avz /abc/ /test
ls /test

echo 123 >> /abc/group
rsync -avz /abc/ /test #只传输变化的数据

######################################################

• 与远程的 SSH目录保持同步
– 下行:rsync [...] user@host:远程目录 本地目录
– 上行:rsync [...] 本地目录 user@host:远程目录

虚拟机A:

ls /abc/
fstab group haha.txt passwd shadow

rsync -avz --delete /abc/ root@192.168.4.207:/opt/

虚拟机B:

ls /opt

#######################################################
实时同步

虚拟机A:
1.密玛验证取消,采用公钥 私钥 验证
[root@svr7 ~]# ssh-keygen #一路回车,生成公钥 私钥

[root@svr7 ~]# ls /root/.ssh/ #公钥 私钥在本地存放位置

[root@svr7 ~]# ssh-copy-id root@192.168.4.207 #拷贝公钥到对方

2.验证
[root@svr7 ~]# ssh root@192.168.4.207

  1. inotify实时监控目录,内容是否变化
    在真机上操作:inotify-tools-3.13.tar.gz 上传到虚拟机A

    scp inotify-tools-3.13.tar.gz root@192.168.4.7:/root/

    步骤1:安装gcc、make
    [root@svr7 /]# yum -y install gcc make
    [root@svr7 /]# rpm -q gcc
    [root@svr7 /]# rpm -q make

    步骤2:tar解包,释放源代码至指定目录
    rm -rf /opt/*
    tar -xf /root/inotify-tools-3.13.tar.gz -C /opt/
    ls /opt/
    以下所有步骤都要在,解压目录下执行

    步骤3: ./configure 配置,指定安装目录/功能模块等选项
    cd /opt/inotify-tools-3.13/
    ./configure

    步骤4:make 编译,生成可执行的二进制程序文件
    make
    步骤5:make install 安装,将编译好的文件复制到安装目录
    make install

    验证:
    [root@svr7 /]# inotifywait #不提示命令没有找到即可
    No files specified to watch!

• 基本用法
– inotifywait [选项] 目标文件夹
• 常用命令选项
– -m,持续监控(捕获一个事件后不退出)
– -r,递归监控、包括子目录及文件
– -q,减少屏幕输出信息
– -e,指定监视的 modify、move、create、delete、attrib 等事件类别

#rsync -avz --delete /abc/ root@192.168.4.207:/opt/

转载于:https://blog.51cto.com/13404755/2050375

相关文章:

  • css3新特性
  • 微信小程序 textarea
  • 从jQuery 入口方式写jQuery工具类库
  • SQL优化常用方法13
  • Maven打uber-jar,运行报读取不到dubbo.xsd的解决方案
  • PHP的引用,你知道多少
  • 06、python 系列之 函数
  • ASP.NET Linux部署(2) - MS Owin + WebApi + Mono + Jexus
  • 并查集-----hrbust 1073
  • Unity LayerMask 的位运算
  • 搭建千万PV高可用系统—DNS
  • eclipse再见,android studio 新手入门教程(一)基本设置
  • CentOS 7.2 安装jdk1.8.x版本
  • UVA 725 division【暴力枚举】
  • angularjs $$phase
  • 【Leetcode】101. 对称二叉树
  • Codepen 每日精选(2018-3-25)
  • CSS3 聊天气泡框以及 inherit、currentColor 关键字
  • javascript 哈希表
  • JavaScript创建对象的四种方式
  • leetcode98. Validate Binary Search Tree
  • ng6--错误信息小结(持续更新)
  • PyCharm搭建GO开发环境(GO语言学习第1课)
  • Spring Cloud中负载均衡器概览
  • Spring-boot 启动时碰到的错误
  • Vue 重置组件到初始状态
  • vue学习系列(二)vue-cli
  • Zepto.js源码学习之二
  • 你不可错过的前端面试题(一)
  • 前嗅ForeSpider教程:创建模板
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 小而合理的前端理论:rscss和rsjs
  • 一些基于React、Vue、Node.js、MongoDB技术栈的实践项目
  • 硬币翻转问题,区间操作
  • 用jQuery怎么做到前后端分离
  • 怎样选择前端框架
  • 不要一棍子打翻所有黑盒模型,其实可以让它们发挥作用 ...
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • ​MySQL主从复制一致性检测
  • #{} 和 ${}区别
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • (27)4.8 习题课
  • (C语言)二分查找 超详细
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (笔试题)分解质因式
  • (超详细)2-YOLOV5改进-添加SimAM注意力机制
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (免费领源码)Java#Springboot#mysql农产品销售管理系统47627-计算机毕业设计项目选题推荐
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (转)Android学习系列(31)--App自动化之使用Ant编译项目多渠道打包
  • (转)eclipse内存溢出设置 -Xms212m -Xmx804m -XX:PermSize=250M -XX:MaxPermSize=356m
  • (转)VC++中ondraw在什么时候调用的
  • .net core 调用c dll_用C++生成一个简单的DLL文件VS2008
  • .Net 垃圾回收机制原理(二)
  • .Net7 环境安装配置