介绍

rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。 rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,我们下面就对它的选项一一进行分析说明。

常用场景

无密码同步

服务端:vim /etc/rsyncd.conf

#This is the rsync daemon configuration 

#global settings
pid file = /var/run/rsyncd.pid
port =
lock file = /var/run/rsyncd.lock
log file = /var/log/rsync.log
gid = root
uid = root #module settings
[share_data]
path = /web/rsync/share_data
use chroot = no
max connections =
read only = yes
write only = no
list = no
ignore errors = yes
timeout =
/usr/bin/rsync --daemon
mkdir -p /web/rsync/share_data

客户端

rsync -avz --progress root@192.168.1.98::share_data /home/hadoop/share_data

限制流量同步

rsync -avz --bwlimit= --progress root@192.168.1.98::share_data /home/hadoop/share_data

有密码同步

服务端

vim /etc/rsyncd.conf

#This is the rsync daemon configuration 

#global settings
pid file = /var/run/rsyncd.pid
port =
lock file = /var/run/rsyncd.lock
log file = /var/log/rsync.log
gid = root
uid = root #module settings
[auth_data]
path = /web/rsync/auth_data
use chroot = no
max connections =
read only = yes
write only = no
list = no
ignore errors = yes
timeout =
auth users = hadoop
secrets file = /etc/rsyncd.passwd
echo "hadoop:password123" > /etc/rsyncd.passwd
chmod /etc/rsyncd.passwd
mkdir -p /web/rsync/auth_data

客户端

echo "password123" > /home/hadoop/rsyncd.passwd
chmod /home/hadoop/rsyncd.passwd
rsync -avz --progress --password-file=/home/hadoop/rsyncd.passwd hadoop@192.168.1.98::auth_data /home/hadoop/auth_data

或者是

export RSYNC_PASSWORD="password123"
rsync -avz --progress hadoop@192.168.1.98::auth_data /home/hadoop/auth_data

写入同步

服务端

vim /etc/rsyncd.conf

#global settings
pid file = /var/run/rsyncd.pid
port =
lock file = /var/run/rsyncd.lock
log file = /var/log/rsync.log
gid = root
uid = root #module settings
[write_data]
path = /web/rsync/write_data
use chroot = no
max connections =
read only = no
list = no
ignore errors = yes
timeout =
auth users = hadoop
secrets file = /etc/rsyncd.passwd
mkdir -p /web/rsync/write_data

客户端

echo "" > /home/hadoop/write_file
export RSYNC_PASSWORD="password123"
rsync -avz --progress --delete /home/hadoop/write_file hadoop@192.168.1.98::write_data

限定IP或者网段

#global settings
pid file = /var/run/rsyncd.pid
port =
lock file = /var/run/rsyncd.lock
log file = /var/log/rsync.log
gid = root
uid = root #module settings
[write_data]
path = /web/rsync/write_data
use chroot = no
max connections =
read only = no
list = no
ignore errors = yes
timeout =
auth users = hadoop
secrets file = /etc/rsyncd.passwd
hosts allow = 192.168.2.32 192.168.1.0/

常见场景例子

指定端口

rsync -avz --port= --progress /home/hadoop/auth_data hadoop@192.168.1.98::auth_data 

限速

rsync --bwlimit= -avz --progress /home/hadoop/auth_data hadoop@192.168.1.98::auth_data 

限速100kb/s同步数据

Rsync通过SSH传输

rsync -e "ssh -p 22"  --progress /home/hadoop/auth_data hadoop@192.168.1.98::auth_data 

更多命令参考

客户端 https://download.samba.org/pub/rsync/rsync.html

服务端 https://download.samba.org/pub/rsync/rsyncd.conf.html

rsync命令详解的更多相关文章

  1. (转)Rsync命令详解

    Rsync命令详解 原文:http://blog.51cto.com/irow10/1826249 说明: Rsync是linux/Unix文件同步和传送工具.用于替代rcp的一个工具,rsync可以 ...

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

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

  3. 第三章 rsync 命令详解和实战用法

    一.rsync传输模式 1.本地模式2.远程模式3.守护进程模式 二.守护进程模式 1.安装rsync[root@backup ~]# yum -y install rsync 2.配置rsync[r ...

  4. Linux rsync 命令详解

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

  5. rsync指令详解

    rsync指令详解(更详细的看官方文档http://rsync.samba.org/ftp/rsync/rsync.html) [root@Centos epel]# rsync --help rsy ...

  6. bg,fg,job命令详解

    基础命令学习目录首页 原文链接:http://www.cnblogs.com/chjbbs/p/6307333.html linux提供的fg和bg命令,可以让我们轻松调度正在运行的任务 假如你发现前 ...

  7. scp命令详解—跨服务器复制文件

    scp在跨机器复制的时候为了提高数据的安全性,使用了ssh连接和加密方式,如果机器之间配置了ssh免密码登录,那在使用scp的时候密码都不用输入. 在服务器104.238.161.75上操作,将服务器 ...

  8. 【转】scp命令详解

    先说下常用的情况: 两台机器IP分别为:A.104.238.161.75,B.43.224.34.73. 在A服务器上操作,将B服务器上/home/lk/目录下所有的文件全部复制到本地的/root目录 ...

  9. rsync参数详解

    Rsync的参数详细解释 -v, --verbose 详细模式输出-q, --quiet 精简输出模式-c, --checksum 打开校验开关,强制对文件传输进行校验-a, --archive 归档 ...

随机推荐

  1. 【Mocha.js 101】同步、异步与 Promise

    前情提要 在上一篇文章<[Mocha.js 101]Mocha 入门指南>中,我们提到了如何用 Mocha.js 进行前端自动化测试,并做了几个简单的例子来体验 Mocha.js 给我们带 ...

  2. web框架思考

    以前一直不明白web框架是怎样实现路由.orm.接受请求的.今天看了下廖雪峰的python 实现web框架博客才明白. 简单总结并记录: http请求->wsgi->处理请求->返回 ...

  3. Android之AnimationDrawable初识

    Drawable animation可以加载Drawable资源实现帧动画.AnimationDrawable是实现Drawable animations的基本类. 这里用AnimationDrawa ...

  4. 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?

    腾讯优测是专业的移动自动化测试平台,提供多维度的自动化测试服务,让测试更简单! 近期有报道称,澳大利亚悉尼市新某大学的一名男生在课堂上看电影,不料耳机没有插好,变成了现场直播... 如果你认为耳机没插 ...

  5. 字符串与json对象之间转换

    var data='{"1":"","2":"two"}' 原生 eval  eval('('++')') JSON.p ...

  6. service的简单使用

    Service的生命周期方法比Activity少一些,只有onCreate, onStart, onDestroy 我们有两种方式启动一个Service,他们对Service生命周期的影响是不一样的. ...

  7. php判断请求类型 ajax、get还是post类型

    1.通过PHP获取预定义变量中的XMLHttpRequest判读. 首先你必须使用jquery或Js发送ajax请求,通过jquery发送的$.ajax, $.get or $.post方法请求网页内 ...

  8. 【jq】c#零基础学习之路(5)自己编写简单的Mylist<T>

    public class MyList<T> where T : IComparable { private T[] array; private int count; public My ...

  9. mfc打开程序

    void CMy3MFCDlg::OnBnClickedButton1() { // TODO: 在此添加控件通知处理程序代码 HINSTANCE hRslt = ShellExecute(NULL, ...

  10. android 开发学习笔记 (一)

    每个app 都有一个自己的 linux 进程: 每个进程都在自己的虚拟机里执行 两个app 可以跑在一个进程,一个vm里 android app 四大组件:activity,content provi ...