博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
rsync同步操作
阅读量:3942 次
发布时间:2019-05-24

本文共 2545 字,大约阅读时间需要 8 分钟。

• 命令用法– rsync [选项...] 源目录 目标目录• 同步与复制的差异– 复制:完全拷贝源到目标– 同步:增量拷贝,只传输变化过的数据• rsync操作选项  – -n:测试同步过程,不做实际修改  – --delete:删除目标文件夹内多余的文档  – -a:归档模式,相当于-rlptgoD  – -v:显示详细操作信息  – -z:传输过程中启用压缩/解压

本地同步

– rsync [选项...] 本地目录1     本地目录2– rsync [选项...] 本地目录1/    本地目录2]# mkdir /todir]# rsync -a  /boot   /todir/     #同步整个文件夹]# rsync -a  /boot/  /todir/     #只同步目录下的数据[root@svr7 ~]# mkdir   /nsd   /test[root@svr7 ~]# cp  /etc/passwd   /nsd[root@svr7 ~]# touch  /nsd/1.txt[root@svr7 ~]# mkdir  /nsd/public[root@svr7 ~]# ls  /nsd/[root@svr7 ~]# rsync -avz /nsd  /test/  #同步目录本身[root@svr7 ~]# ls  /test[root@svr7 ~]# ls  /test/nsd[root@svr7 ~]# rm -rf /test/*[root@svr7 ~]# rsync -avz  /nsd/  /test/  #同步目录内容[root@svr7 ~]# touch  /nsd/{3..10}.txt[root@svr7 ~]# ls  /nsd/[root@svr7 ~]# rsync -avz /nsd/  /test/[root@svr7 ~]# ls  /test

删除目标目录多余的文档

[root@svr7 ~]# rm -rf /nsd/*.txt[root@svr7 ~]# ls /nsd[root@svr7 ~]# ls /test[root@svr7 ~]# rsync -avz --delete /nsd/ /test/[root@svr7 ~]# ls /nsd[root@svr7 ~]# ls /testrsync+SSH同步• 与远程的 SSH目录保持同步– 下行:rsync [...]  user@host:远程目录   本地目录– 上行:rsync [...]  本地目录   user@host:远程目录虚拟机A:[root@svr7 /]# ls /opt[root@svr7 /]# rsync -avz --delete /opt/  root@192.168.4.207:/opt/虚拟机B:[root@pc207 /]# ls /opt虚拟机A:[root@svr7 /]# touch /opt/haxi.txt[root@svr7 /]# rsync -avz --delete /opt/  root@192.168.4.207:/opt/虚拟机B:[root@pc207 /]# ls /opt实时同步虚拟机A:

一 生成公钥与私钥 实现ssh无密码验证

[root@svr7 /]# ssh-keygen      #一路回车 [root@svr7 /]# ls /root/.ssh/id_rsa(私钥)   id_rsa.pub(公钥)2.复制公钥到对方[root@svr7 /]# ssh-copy-id root@192.168.4.207# rsync -avz --delete /opt/  root@192.168.4.207:/opt/虚拟机B:[root@pc207 ~]# ls /root/.ssh/authorized_keys

二 安装inotify-tools实现监控目录内容变化

步骤一:安装开发工具gcc  make步骤二:tar解包]# tar -xf  /tools/inotify-tools-3.13.tar.gz -C /test]# ls  /test/inotify-tools-3.13/步骤三: ./configure 配置]# cd  /test/inotify-tools-3.13/]# ./configure  步骤四:make 编译,生成可执行的二进制程序文件]# cd  /test/inotify-tools-3.13/]# make步骤五:make install 安装,将编译好的文件复制到安装目录]# cd  /test/inotify-tools-3.13/]# make  install ]# ls /usr/local/bin/inotifywait /usr/local/bin/inotifywait
• 基本用法– inotifywait [选项] 目标文件夹• 常用命令选项– -m,持续监控(捕获一个事件后不退出)– -r,递归监控、包括子目录及文件– -q,减少屏幕输出信息– -e,指定监视的 modify、move、create、delete、attrib 等事件类别三 书写Shell脚本,实时同步for比较适合有次数的循环       while比较适合死循环  while  [ 条件 ]do         重复执行的代码done[root@svr7 /]# cat /root/rsync.sh#!/bin/bashwhile  inotifywait  -rqq  /opt/  do  rsync -az --delete /opt/  root@192.168.4.207:/opt/  done &[root@svr7 /]# chmod +x /root/rsync.sh[root@svr7 /]# /root/rsync.sh[root@svr7 /]# pgrep -l rsync[root@svr7 /]# killall  rsync.sh

转载地址:http://jrnwi.baihongyu.com/

你可能感兴趣的文章
SpringCloud微服务应用入门
查看>>
SpringCloud之session共享
查看>>
Springboot集成Shiro实现认证
查看>>
Spring、Spring MVC和MyBatis编程式集成示例
查看>>
在Springboot应用使用redis缓存
查看>>
Spring入门
查看>>
Idea提示键和热部署配置以及git使用
查看>>
Deepin+Vscode搭建vue.js项目及Git操作
查看>>
基于Spring Security前后端分离式项目解决方案
查看>>
Vue3.0+Vite2.0项目框架搭建(一)
查看>>
Vue3.0+Vite2.0项目框架搭建(二)- 引入axios
查看>>
Vue3.0+Vite2.0项目框架搭建(三)- 引入Element3
查看>>
使用Vue CLI v4.5(+)搭建Vue3.0项目框架搭建
查看>>
Java集合框架
查看>>
线程协作与生产者消费者问题
查看>>
Vue入门
查看>>
非starter方式实现springboot与shiro集成
查看>>
Starter方式实现Springboot与Shiro集成
查看>>
移动端多页面应用(MPA)的开发(一)
查看>>
移动端多页面应用(MPA)的开发(二)
查看>>