文档章节

Rsync同步工具

阿想
 阿想
发布于 2017/08/21 17:33
字数 1102
阅读 6
收藏 0
点赞 0
评论 0

10.28 rsync工具介绍

10.29/10.30 rsync常用选项

10.31 rsync通过ssh同步

10.28 -10 34 rsync

10.28 rsync工具介绍

  • rsync是同步工具,增量更新
    • cp只能覆盖,浪费磁盘IO。使用rsync增量同步
yum install -y rsync  
  • 常见用法
rsync  -av /etc/passwd /tmp/1.txt
rsync  -av /etc/passwd root@192.168.83.22:/tmp/1.txt

  • rsync格式
 rsync [OPTION] … SRC   DEST 本地同步
 rsync [OPTION] … SRC   [user@]host:DEST 本地同步远程(不写用户则是当前用户,对方没有则报错)
 rsync [OPTION] … [user@]host:SRC   DEST 远程同步本地
 rsync [OPTION] … SRC   [user@]host::DEST ?
 rsync [OPTION] … [user@]host::SRC   DEST

10.29/10.30 rsync常用选项

  • rsync常用选项

    • -a 包含-rtplgoD
    • -r 同步目录时要加上,类似cp时的-r选项
    • -v 可视化
    • -l 保留软连接 常配和L
    • -L 加上该选项后,对软链接的同步变成对源文件的同步,但是仍然以软连接命名
    • -p 保持文件的权限属性
    • -o 保持文件的属主
    • -g 保持文件的属组
    • -D 保持设备文件信息,ms没啥卵用
    • -t 保持文件的时间属性
    • --delte 删除DEST中SRC没有的文件,保证整体目录完全一致!
    • --exclude 排除指定文件,如--exclude “logs”会把文件名包含logs的文件或者目录过滤掉,不同步,支持通配
    • -P 显示同步过程,比如速率,比-v更加详细
    • -u 加上该选项后,如果DEST中的文件比SRC新,则不同步 你新你有理
    • -z 传输时压缩 节省带宽
  • 示例:

//准备实验用的aaa目录
root@axiang01 ~]# ls -l aaa
总用量 4
-rw-r--r--. 1 root root 12 7月  19 10:13 11.txt
drwxr-xr-x. 2 root root  6 7月  19 10:12 aa
lrwxrwxrwx. 1 root root 10 7月  19 10:19 softlink1 -> /tmp/1.txt

//日思一脑残rsync av是标配
[root@axiang01 ~]# rsync -av /root/aaa/ /tmp/aaa_dest/ 建议目录后加“/”
sending incremental file list
created directory /tmp/aaa_dest
./
11.txt
softlink1 -> /tmp/1.txt
aa/

sent 161 bytes  received 41 bytes  404.00 bytes/sec
total size is 22  speedup is 0.11
[root@axiang01 ~]# ls -l /tmp/aaa_dest
总用量 4
-rw-r--r--. 1 root root 12 7月  19 10:13 11.txt
drwxr-xr-x. 2 root root  6 7月  19 10:12 aa
lrwxrwxrwx. 1 root root 10 7月  19 10:19 softlink1 -> /tmp/1.txt
[root@axiang01 ~]# 

//干掉软,靠avL
[root@axiang01 ~]# rsync -avL /root/aaa/ /tmp/aaa_dest/ 
//增加L选项可以同步软链接的源文件,不过还是以软连接命名(为了要和同步源目录下的文件命名保持一致)
sending incremental file list
softlink1

sent 1166 bytes  received 32 bytes  2396.00 bytes/sec
total size is 1053  speedup is 0.88
[root@axiang01 ~]# ls -l /tmp/aaa_dest/
总用量 8
-rw-r--r--. 1 root root   12 7月  19 10:13 11.txt
drwxr-xr-x. 2 root root    6 7月  19 10:12 aa
-rw-r--r--. 1 root root 1041 7月  18 22:32 softlink1 此处与/tmp/1.txt同步

//同步啥是啥,别整没用的 --delete
[root@axiang01 ~]# touch /tmp/aaa_dest/new.txt 人无我有~
[root@axiang01 ~]# rsync -avL /root/aaa/ /tmp/aaa_dest/ --delete 还有么?
sending incremental file list
./
deleting new.txt

//不同步没用的 --exclude
[root@axiang01 ~]# rm -rf /tmp/aaa_dest/* 重来
[root@axiang01 ~]# rsync -avL /root/aaa/ /tmp/aaa_dest/ --exclude "*.txt" --exclude "a*" 不同步啥啥啥
sending incremental file list
./
softlink1

sent 1135 bytes  received 34 bytes  2338.00 bytes/sec
total size is 1041  speedup is 0.89
[root@axiang01 ~]# ls /tmp/aaa_dest/
softlink1 //exclude挺好使

//看同步大文件要多久 -P选项
[root@axiang01 ~]# !rm
rm -rf /tmp/aaa_dest/*
[root@axiang01 ~]# rsync -avP /root/aaa/ /tmp/aaa_dest/ 精确显示传输速度和%
sending incremental file list
./
11.txt
          12 100%    0.00kB/s    0:00:00 (xfer#1, to-check=2/4)
softlink1 -> /tmp/1.txt
aa/

//哎呦喂,你新你有理 -auv 不同步mtime落后的源文件
[root@axiang01 ~]# vi /tmp/aaa_dest/11.txt 
[root@axiang01 ~]# rsync -auv /root/aaa/ /tmp/aaa_dest/
sending incremental file list
./

sent 100 bytes  received 16 bytes  232.00 bytes/sec
total size is 22  speedup is 0.19
[root@axiang01 ~]# cat /tmp/aaa_dest/11.txt 
6ofjeow
afegs
efewf:66
555
444
没变

//压缩传输 -z选项
[root@axiang01 ~]# rsync -az /root/aaa/ /tmp/aaa_dest/
//文件不大看不出效果

10.31 rsync通过ssh同步

  • rsync通过ssh方式同步
    • 远程同步的默认方式,会让你输入密码
    • rsync -av [源地址:]源目录 [目标地址:]目标目录 //目录是绝对路径
    • -e "ssh -p 22"连接对方指定的远程端口

示例:


//推文件 没弄过密钥需要输入登录密码
[root@axiang01 ~]# rsync -av /etc/passwd 192.168.83.22:/tmp/axiang.txt
sending incremental file list
passwd

sent 1115 bytes  received 31 bytes  99.65 bytes/sec
total size is 1041  speedup is 0.91

//拉文件
[root@axiang01 ~]# rsync -avP 192.168.83.22:/tmp/axiang.txt /tmp/aaa.txt
receiving incremental file list
axiang.txt
        1041 100% 1016.60kB/s    0:00:00 (xfer#1, to-check=0/1)

sent 30 bytes  received 1124 bytes  769.33 bytes/sec
total size is 1041  speedup is 0.90

© 著作权归作者所有

共有 人打赏支持
阿想
粉丝 0
博文 72
码字总数 69742
作品 0
Rsync+Inotify-client 实现实时同步

在前面的博文实践记录之-Rsync镜像备份介绍了镜像备份工具Rsync的安装和使用.但在大数据时代,rsync的不足之处也暴露出来. 首先.rsync本身实现不了实时备份.靠系统的crontab实现的话也受...

乜波
2014/07/16
0
0
Rsync+inotify实现文件实时同步

数据备份、文件备份是运维、DBA等岗位最熟悉不过的话题,这里不介绍数据库的备份,简单介绍一下文件同步工具,这样的工具有很多,Windows环境下有Goodsync、FreeFileSync等,Linux下rsync、u...

tianya1993
2017/09/17
0
0
rsync+inotify实时同步

Rsync+Inotify实时同步 Rsync: rsync是类unix系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH、rsync主机同步。 Inotify: Inotify 是...

XiaoBingZ
2017/11/28
0
0
10.28 rsync工具介绍 10.29/10.30 rsync常用选项 10.31 rsync通

八周二次课 10.28 rsync工具介绍 10.29/10.30 rsync常用选项 10.31 rsync通过ssh同步 10.28 rsync工具介绍 10.29/10.30 rsync常用选项 设置rsync Rsync 进行同步 删除多余文件 排除掉*.txt的...

wb_rambo123
01/31
0
0
Linux系统管理初步(八)数据备份工具rsync

rsync工具 rsync工具用于同步文件夹数据,他不同于cp命令,他可以处理实时在变更的文件,把源文件目录和目标数据目录同步,对于两个目录相同的部分数据则不会处理。 一、工具概要 命令写法 ...

whytl
01/31
0
0
Rsync实现主服务器热备份

Rsync全称是remote synchronize,也就是远程同步工具。官网介绍,“rsync is an open source utility that provides fast incremental file transfer. (rsync是一款提供快速增量文件传输的开...

shiw019
2016/05/22
191
0
CentOS6.8使用Rsync+sersync实现数据实时同步

Sersync简介 Sersync利用inotify与rsync对服务器进行实时同步,其中inotify用于监控文件系统事件,rsync是目前广泛使用的同步算法,其优点是只对文件不同的部分进行操作,所以其优势大大超过...

justin_peng
2017/08/02
0
0
rsync工具介绍、常用选项以及通过ssh同步

linux下的文件同步工具 rsync rsync是非常实用的一个同步工具,可以从a机器到b机器传输一个文件,也可以备份数据,系统默认没有这个工具,要使用命令 yum install -y rsync 安装。 rsync的命...

黄昏残影
前天
0
0
Rsync 实现远程同步

       介绍   rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送...

chinawxl
2017/12/26
0
0
Rsync数据同步工具应用指南

1、Rsync数据同步工具应用指南 简介 Rsync的特性: Rsync的工作方式: Rsync命令同步选项参数: 本地主机模式示例 远程RPC模式示例 简介 Rsync是一款开源的、快速的、多功能的、可实现全量及...

char_cce
2017/05/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

用 Python 实现打飞机,让子弹飞吧!

所用技术和软件 python 2.7 pygame 1.9.3 pyCharm 准备工作 安装好 pygame 在第一次使用 pygame 的时候,pyCharm 会自动 install pygame。 下载好使用的素材。 技术实现 初始化 pygame 首先要...

猫咪编程
6分钟前
0
0
MySQL的行锁和表锁

简单总结一下行锁和表锁。 行锁 每次操作锁住一行数据。开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。 表锁 每次操作锁住整张表。开销小,加锁快;不会出...

to_ln
8分钟前
0
0
Java IO类库之字节数组输入流ByteArrayInputStream

一、ByteArrayInputStream字节数组输入流介绍 ByteArrayInputStream是字节数组输入流,继承自InputStream。它的内部包含一个缓冲区,是一个字节数组,缓冲数组用于保存从流中读取的字节数据,...

老韭菜
10分钟前
0
0
iOS安全应该做哪些事情

1. 尽量使用HTTPS协议。 2. 密码提交的时候,密码使用SHA256加密后传输,MD5等经过哈希碰撞已经可以推算出原文。 3. 密码提交的时候,可以加盐。 4. 密码保存在本地的时候,尽量使用钥匙串保...

HOrange
16分钟前
0
0
react native 注意事项

1. 环境参考官网 android studio 必装 java jdk安装 1.8版本(环境建议自己一步一步配置,切记不要 apt ) 2.有改变编译内容发现 会白屏,然后APP消失,请卸载原来的测试 appinfo (连续两次...

304158
22分钟前
0
0
FOMO游戏代码解析

源代码在此处

怎当她临去时秋波那一转
27分钟前
1
0
EOS智能合约与DApp开发入门

EOS的是Block.One主导研发的一个区块链底层公链系统,它专门为支撑商业去中心化 应用(Decentralized Application)而设计,其代码开源。 比特币被称为区块链1.0,因为它开辟了数字加密货币的...

笔阁
40分钟前
1
0
编译cjson到dll

https://blog.csdn.net/mengzhisuoliu/article/details/52203724 编译完成后 是纯lua实现的json decode 的10倍以上...

梦想游戏人
49分钟前
0
0
JS基础- Date 对象

Date 对象 Date 对象用于处理日期和时间。 创建 Date 对象的语法: var myDate=new Date() 注释:Date 对象会自动把当前日期和时间保存为其初始值。 Date 对象属性 属性 描述 constructor 返...

ZHAO_JH
52分钟前
0
0
Python数据分析numpy(1)

Python开源的科学计算基础库 1.表示N维数组对象ndarray 2.线性代数、傅里叶变换、随机数生成 3.广播函数,整合c++、c 一.数据的维度 1.数据 2.数据维度 3.一维数据 (1)特点 (2)Python中的...

十年磨一剑3344
54分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部