reference:http://crybit.com/rsync-commands-switches/

The “rsync” is a powerful command under the Linux environment. The rsync stands for Remote Sync. Normally rsync is used to transfer file from one server(source) to another server(destination). rsync has a lot of switches or option for managing the command much usefully. Here I am explaining the switches of rsync command with examples. Rsync will actually look and see what in the file has changed and upload only the part of the file that has changed. Unlike ftp and other transfer solutions rsync doesn’t simply re-upload the entire file.

Common Syntax for Rsync:

# rsync [options] Source Destinations.

Switches of rsync:

1, -v, –verbose
Increase verbosity.

Example:
I’ve created a file ‘rsync’ under ‘/root/Rsync/’ for testing purpose.

root@server [~]# rsync -v /root/Rsync/rsync .
rsync sent 65 bytes received 31 bytes 192.00 bytes/sec
total size is 0 speedup is 0.00

2, -r, –recursive
Recurse into directories.

3, -l, –links
Copy symlinks as symlinks.

4, -p, –perms
Preserve permissions.

5, -t, –times
Preserve modification times.

6, -g, –group
Preserve group.

7, -o, –owner
preserve owner (super-user only)

8, -D
Same as –devices –specials.
–devices : preserve device files (super-user only).
–specials : preserve special files.

9, -H, –hard-links
Preserve hard links

10, -A, –acls
Preserve ACLs (implies –perms)

11, -X, –xattrs
Preserve extended attributes

12, -a, –archive
This is very important rsync switch, because it can be done the functions of some other switches combinations.
Archive mode; equals -rlptgoD (no -H,-A,-X)

13, -q, –quiet
Suppress non-error messages.

14, To specify the file size for sync:
–max-size=SIZE
Don’t transfer any file larger than SIZE
–min-size=SIZE
Don’t transfer any file smaller than SIZE

15, –delete
Delete extraneous files from destination dirs.

16, W, –whole-file
Copy files whole (without delta-xfer algorithm)

17, -u, –update
Skip files that are newer on the receiver. Means, Do Not Overwrite the Modified Files at the Destination.

18, –progress
View the rsync Progress during Transfer.

19, Include and Exclude Pattern.
–include
–exclude
Patterns are expressed in single quote.

Examples:

[root@ser crybit]# rsync -avz --include 'c*' --exclude '*' /root/crybit/ 109.200.11.67:/root/Rsinc101
root@109.200.11.67's password:
stdin: is not a tty
sending incremental file list
cry1.doc
cry2.doc
cry3.doc
cry4.doc
cry5.doc sent 267 bytes received 107 bytes 68.00 bytes/sec
total size is 0 speedup is 0.00

In the above example files starting with ‘c’ are included for Rsync and all other files are excluded on Rsync operation.

20 -e : Rsync over Shell(SSH)
Syntax:

# rsync -avz -e ssh Source Destination

Some useful switches combinations and Useful “Rsync” examples:

1, How to Sync two directories in the same machine ?
I have created two directories(also some files inside each dir) under /root location to check the rsync usages.

/root/Rsync1/
/root/Rsync2/

Example:

root@server [~]# rsync -zvr /root/Rsync1/ /root/Rsync2/
sending incremental file list
rsync1.txt
rsync10.txt
rsync2.txt
rsync3.txt
......
......
sent 502 bytes received 202 bytes 1408.00 bytes/sec
total size is 0 speedup is 0.00

Where,
-z is to enable compression
-v verbose
-r indicates recursive

2, Preserve the following option while Sync files using -a switch.

r, l, p, t, g, o, D : Switch details are mentioned in the above section.
Recursive mode, symbolic links, permissions, timestamp, owner and group

See the example below:

root@server [~]# ll /root/Rsync1/rsync10.txt
-rw-r--r-- 1 root root 0 Feb 17 07:40 /root/Rsync1/rsync10.txt
root@server [~]# ll /root/Rsync2/rsync10.txt
-rw-r--r-- 1 root root 0 Feb 17 07:40 /root/Rsync2/rsync10.txt

3, How to Rsync files from remote server to local ?
It is quit similar to SCP, the syntax for doing the same is pasted below:

# rsync -azv Remote-IP:/path/for/Sync /Path/to/Sync

Some examples:
Sync the directory from remote to local

[root@ser crybit]# rsync -azv MY.SERVER.IP:/root/Rsync1 /root/crybit/
root@109.200.11.67's password:
stdin: is not a tty
receiving incremental file list
Rsync1/
Rsync1/rsync1.txt
Rsync1/rsync10.txt
Rsync1/rsync2.txt
Rsync1/rsync3.txt
.....
.....
sent 205 bytes received 527 bytes 77.05 bytes/sec
total size is 0 speedup is 0.00

Sync all files from remote to local

[root@ser crybit]# rsync -azv 109.200.11.67:/root/Rsync1/* /root/crybit/
root@109.200.11.67's password:
stdin: is not a tty
receiving incremental file list
rsync1.txt
rsync10.txt
rsync2.txt
rsync3.txt
...
...
sent 201 bytes received 499 bytes 93.33 bytes/sec
total size is 0 speedup is 0.00

4, How to sync files from local to remote server ?
Syntax:

# rsync -azv /local-path/for/Sync/  Remote-IP:/path/to/Sync

Examples:

[root@support crybit]# rsync -avz /root/crybit/ 109.200.11.67:/root/Rsinc101
root@109.200.11.67's password:
stdin: is not a tty
sending incremental file list
created directory /root/Rsinc101
./
rsync1.txt
rsync10.txt
rsync2.txt
rsync3.txt
...
...
sent 1028 bytes received 399 bytes 190.27 bytes/sec
total size is 0 speedup is 0.00
Note 1 : In example 3 and 4 you can use user@IP:/path format, if you have only the user privilege on server
Note 2 : The rsync will automatically create the destination directory/location if it isn't there.

That’s it !! 

Related:
groupdelgroupmemsgroupmoduseraddusermodchgrpchownlsheadtailtoppsfind,crontabftp commandstarrpm,

20+ Rsync command’s switches and common usages with examples – Unix/Linux--reference的更多相关文章

  1. 15+ tar command usages with examples – Unix/Linux--reference

    reference :http://crybit.com/tar-command-usages-with-examples/ The ‘tar’ saves many files together i ...

  2. 10+ commonly using find command switches with example Unix/Linux

    http://crybit.com/find-command-usage-with-example-unixlinux/ find command is one of the best search ...

  3. 18 Tar Command Examples in Linux

    FROM: http://www.tecmint.com/18-tar-command-examples-in-linux/ 18 Tar Command Examples in Linux By R ...

  4. selenium.common.exceptions.StaleElementReferenceException: Message: stale element reference: element is not attached to the page document

    抓取网页代码后,由于是在同一个li标签下,所以使用一次性抓取,所有的a标签,然后循环做不同的操作,但是抛出找不到元素异常. def office_page(_chrome: Chrome): sn = ...

  5. 13 Basic Cat Command Examples in Linux(转) Linux中cat命令的13中基本用法

    Cat (串联) 命令是Linux/Unix开源系统中比较常用的一个命令.我们可以通过Cat命令创建一个或多个文件,查看文件内容,串联文件并将内容输出到终端设备或新的文件当中,这篇文章我们将会以实例的 ...

  6. 13 Basic Cat Command Examples in Linux

    FROM: http://www.tecmint.com/13-basic-cat-command-examples-in-linux/ The cat (short for “concatenate ...

  7. 15 Practical Grep Command Examples In Linux / UNIX

    You should get a grip on the Linux grep command. This is part of the on-going 15 Examples series, wh ...

  8. List of Chromium Command Line Switches(命令行开关集)——官方指定命令行更新网址

    转自:http://peter.sh/experiments/chromium-command-line-switches/ There are lots of command lines which ...

  9. Unix/Linux环境C编程入门教程(20) 搭建基于Mac的 Xcode 与 QT 开发环境

    1.启动 Vmware,如果没有 VMware 的同学,请看前面我们搭建 VMware 的视频 2.打开虚拟机以后,出现虚拟机界面 3 新建一个虚拟机 4 选择自定义,单击下一步 5 选择默认的 VM ...

随机推荐

  1. Text Kit进阶

    在上一篇文章Text Kit入门中我们主要了解了什么是Text Kit及它的一些架构和基本特性,这篇文章中会涉及关于Text Kit的更多具体应用. Text Kit是建立在Core Text框架上的 ...

  2. 前言:关于nagios监控

    前言,关于nagios监控. 这段时间一直在做关于nagios监控,不停的做实验,从而也忽略了书写这方面,今天写一份安装文档花了四个多小时,看来写文档也是一件很麻烦的事情,不过,做过的事情还是需要留下 ...

  3. bzoj 1324 Exca王者之剑(黑白染色,最小割)

    [题意] 两相邻点不能同时选,选一个点集使得权值和最大. 出题人语文好... [思路] 将图进行黑白二染色,然后构建最小割模型. [代码] #include<set> #include&l ...

  4. 数据结构(三)实现AVL树

    AVL树的定义 一种自平衡二叉查找树,中面向内存的数据结构. 二叉搜索树T为AVL树的满足条件为: T是空树 T若不是空树,则TL.TR都是AVL树,且|HL-HR| <= 1 (节点的左子树高 ...

  5. 介绍Google App Engine

    Google App Engine是一个网络应用托管服务(web application hosting service).所谓网络应用(By web application),我们的意思的可以通过网 ...

  6. linux网络编程笔记——TCP

    1.TCP和UDP TCP是长连接像持续的打电话,UDP是短消息更像是发短信.TCP需要消耗相对较多的资源,但是传输质量有保障,UDP本身是不会考虑传输质量的问题. 2.网络传输内容 我习惯的做法是直 ...

  7. Excel动态生成JSON

    在最近的一个项目中,有大量的数据源来至Excel,转成JSON供前台使用.Excel数据是人工录入的,难免会有错误,所以中间会有逻辑检查.在C#中读取Excel的方式有很多,网上一搜一大堆,这里我也贴 ...

  8. sqlserver 中的GUID 全局唯一标识 -摘自网络

    --简单实用全局唯一标识 DECLARE @myid uniqueidentifierSET @myid = NEWID()PRINT 'Value of @myid is: '+ CONVERT(v ...

  9. 主席树模板(poj2104)

    主席树是可持久化线段树,可以记录线段树的历史版本. 代码中和线段树不同的是,l,r记录的是左右子树编号,因为普通的线段树版本中,左右子树自然就是o<<1和o<<1|1,但是主席 ...

  10. Java设计模式系列之桥接模式

    桥接模式(Bridge)的定义 在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?这就要使用桥接模式 将抽象部分与它的实现部分分离,使它们都可以独立地 ...