rsync命令的基本使用

                                      作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

  rsync服务软件是一款开源,高速的,数据同步(拷贝)工具。

一.rsync服务的特点

1>.本地拷贝

  可以把数据从一个路径复制到另一个路径,类似与cp和mv的功能。

2>.异地拷贝

  可以从一台机器把数据复制到另一台机器,类似与scp。

3>.增量备份

  可以实现增量拷贝,只把多的内容拷过去,效率很高。

4>.删除功能

  rsync本身并没有删除功能,但是可以通过它的参数来实现删除功能,类似于Linux的rm命令。

5>.rsync服务模式

  可以挂起后台进程,接受别人访问,这也是它的特殊的地方。

二.rsync实操案例

1>.本地拷贝

[root@yinzhengjie ~]# rsync -avz /var/log/messages /tmp/

  与cp不同的是它默认就是增量拷贝,当第一个拷贝一个较大的文件时,若第二次在继续拷贝该文件时,它只会拷贝新增的内容。

  rsync命令参数:

    -v:--verbose,显示输出过程

    -z:--compress,压缩

    -a:--archive,多参数集合,也叫归档模式,包括多个参数,相当于:-rlptgoD(no -H,-A,-X)。

    -r:--recursive,递归

    -t:--times,保持修改时间属性

    -o:--owner 保持属主不变

    -p:--perms 保持权限不变

    -g:--group 保持用户组不变

    -l:--links 保证用户组不变

    -q:--quiet 安静的拷贝

2>.删除功能

[root@yinzhengjie ~]# mkdir /yinzhengjie

[root@yinzhengjie ~]# rsync -avz --delete /yinzhengjie/ /opt/

  表示将目标文件的内容和本文件的内容一致,若目标文件中存在本目录中不存在的文件时,直接删除!

3>.排除文件

  --exclude:排除文件,当然也支持排除多个文件,用“{a.log,b.log,c.log}”替换图中的"a.log"即可。

   --exclude-from:从文件中排除

 4>.异地拷贝

[root@yinzhengjie ~]# rsync -avz /yinzhengjie -e 'ssh -p 5200' yinzhengjie@172.16.3.210:~

  可以从一台机器把数据赋值到另一台机器,相当于scp命令。只不过scp命令是全量拷贝,而rsync是增量拷贝(只拷贝变化的文件),各自有自己的特点。

提示:"/yinzhengjie"和"/yinzhengjie/"这两个目录的区别是什么?

  /yinzhengjie: 指的是目录本身及目录下的内容。

  /yinzhengjie/ :指的是目录下的内容。

5>.关于远程拷贝的shell脚本

#!/bin/bash
#@author :yinzhengjie
#blog:http://www.cnblogs.com/yinzhengjie
#EMAIL:y1053419035@qq.com #判断用户是否传参
if [ $# -lt ];then
echo "请输入参数";
exit
fi #获取文件路径
file=$@ #获取子路径
filename=`basename $file` #获取父路径
dirpath=`dirname $file` #获取完整路径
cd $dirpath
fullpath=`pwd -P` #同步文件到DataNode
for (( i=;i<=;i++ ))
do
#使终端变绿色
tput setaf
echo =========== s$i %file ===========
#使终端变回原来的颜色,即白灰色
tput setaf
#远程执行命令
rsync -lr $filename `whoami`@s$i:$fullpath
#判断命令是否执行成功
if [ $? == ];then
echo "命令执行成功"
fi
done

rsync命令的基本使用的更多相关文章

  1. rsync命令详解

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

  2. 烂泥:【转】rsync命令参数详解

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. rsync安装完毕后,我们可以通过rsync –help查看rysnc命令的使用.如下: 有关rsync的命令格式,在此我们就不多介绍了.如果有想了解的 ...

  3. Linux rsync 命令详解

    服务器之间常常要保持些文件或目录的一致,比如一些大的软件下载网站,它们通常使用多台服务器来提供下载服务.当一台服务器上的文件更新后,其它的服务器 也需要更新,而且 在更新的时候应该是只对新增或是修改过 ...

  4. rsync命令(同步/备份数据)

    rsync命令rsync命令是一个远程数据同步工具,可通过 lam/wan快速同步多台主机间的文件.rsync使用所谓的 "rsync算法"来使用本地和远程两个主机之间的文件达到同 ...

  5. rsync命令来实现将服务器端的文件备份到客户端

    rsync命令来实现将服务器端的文件备份到客户端

  6. 使用rsync命令提高文件传输效率

    众多数据库服务器的管理过程中,在不同服务器间的文件传输是免不了的.您可以使用scp命令或FTP方法完成文件的发送和接收,这篇文章我将给大家介绍另外一种方法,这就是rsync命令.rsync是文件传输程 ...

  7. man rsync翻译(rsync命令中文手册)

    本文为命令rsync的man文档翻译,几乎所有的选项都翻译了,另外关于筛选规则部分只翻译了一部分.由于原文很多地方都比较啰嗦,所以译文中有些内容可能容易让国人疑惑,所以我个人在某些地方加上了注释.若有 ...

  8. rsync命令解释

    -v, --verbose 详细模式输出-q, --quiet 精简输出模式-c, --checksum 打开校验开关,强制对文件传输进行校验-a, --archive 归档模式,表示以递归方式传输文 ...

  9. Rsync(远程同步): linux中Rsync命令的实际示例

    rsync的 ( 远程同步 )为在Linux / Unix系统局部 拷贝和同步文件和目录远程以及一个最常用的命令. 随着rsync命令的帮助,您可以复制并在目录中远程和本地同步数据,在磁盘和网络,进行 ...

  10. rsync命令详解、rsync用ssh隧道方式同步

    ● rsync格式安装命令 yum install -y rsync与scp的区别:scp复制为完全覆盖,rsync为增量同步,只同步修改过的数据.rsync命令格式如下: rsync 选项 源文件 ...

随机推荐

  1. 用java构造一个带层次的文件目录遍历器

    import java.util.List; import java.io.File; import java.util.ArrayList; public class IteratorUtil { ...

  2. Leetcode题库——11.盛最多水的容器

    @author: ZZQ @software: PyCharm @file: maxArea.py @time: 2018/10/11 21:47 说明:给定 n 个非负整数 a1,a2,...,an ...

  3. Hibernate left join

    6.4.5  左外连接 左外连接(Left Outer Join)查询出左表对应的复合条件的所有记录,如查询李晓梅同学的选课信息.下面是类HQLLeftOuterJoinQuery的源代码. 其实关联 ...

  4. HDU 4418 Time travel 期望dp+dfs+高斯消元

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4418 Time travel Time Limit: 2000/1000 MS (Java/Othe ...

  5. mysql非安装包安装教程

    设置mysql的环境变量 本人设置安装的路径是:E:\WebApplication\webMySQL\mysql-5.7.13-winx64 我的电脑 ---> 高级系统配置 ---> 环 ...

  6. IHttpModule理解-知识补充

    文章:IHttpModule的那些事 可以自定义类实现IHttpModule接口,然后实现接口方法Init,Init方法可以得到HttpApplication 的实例化对象. 然后给对象的事件的注册各 ...

  7. 性能分析_linux服务器CPU_中断

    中断 1.  指标范围 1.1  Interrupt rate 应该与cpu利用率结合分析,如果cpu利用率在合理范围内,大量的中断也是可以接受的.一个巨大的中断值,同时伴随着缓慢的系统性能表现,指示 ...

  8. Js获取上一月份

    new Date(new Date().setMonth(new Date().getMonth() - 1))

  9. PHP时间格式化参数表笔记

    date_create_from_format() 函数返回一个根据指定格式进行格式化的新的 DateTime 对象.通常需要配合date_format()函数使用 语法: date_create_f ...

  10. 2013南京网赛1003 hdu 4750 Count The Pairs

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4750 题意:给出一个无向图,f(a,b)表示从点a到点b的所有路径中的每条路径的最长边中的最小值,给出 ...