[转]rsync命令中文文档
原文链接
rsync是一个快速、多功能的远程(和本地)文件拷贝工具。
摘要
Local: rsync [OPTION...] SRC... [DEST]
Access via remote shell:
Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
Push: rsync [OPTION...] SRC... [USER@]HOST:DEST
Access via rsync daemon:
Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST
当仅有一个SRC或DEST参数时将列出源文件列表而不是复制文件。
描述
Rsync是一个快速且功能非常丰富的文件拷贝工具。它可以在本地和远程之间通过shell或rsync服务互相拷贝文件。它提供了大量的选项来控制它各方面功能的行为,且在指定待拷贝文件方面非常有弹性。它以其增量拷贝算法而出名,只拷贝源和目标不同的文件部分,因此减少网络间要传输的数据。Rsync每天都被广泛用于做备份、镜像和当作升级版拷贝命令。
Rsync使用"quick check"算法(默认)决定文件是否需要被传输,它会找出大小或最后修改时间(mtime)不同的文件。当"quick check"算法表明了文件不需要被更新时,任何其他保留属性(译者注:除大小和最后修改时间外的属性)都将直接在目标文件上修改。
rsync的其他特性包括:
- 支持类似于GNU tar命令的exclude和exclude-from选项
- 支持拷贝链接文件、设备文件、所有权(即所有者和所属组)、属组以及权限
- 支持CVS排除模式以忽略相同的文件(译者注:CVS是一种版本控制系统)
- 可以使用任意透明的远程shell(remote shell),包括ssh或rsh
- 不要求超级管理员权限
- 以pipeline管道模型传输文件以便最小化降低成本
- 支持匿名或可身份认证的rsync daemon模式(做镜像的理想方式)
一般特性
Rsync在本地或远程主机之间拷贝文件(但不支持两个远程之间互相拷贝)。
rsync有两种不同的方式联系远程主机:使用远程shell程序作为传输方式(如ssh或rsh)或直接通过TCP联系rsync守护进程。当命令行中指定的源或目标主机后使用了单个冒号(:)时将使用远程shell传输模式。当在命令行中指定的源或目标主机后使用双冒号(::)或使用了rsync://这种URL时将表示使用TCP联系rsync守护进程,但rsync://方式有一个例外,请参见下文"通过远程SHELL连接使用RSYNC-DAEMON特性"段落的内容。
但有一个特殊情况,如果只给定了源地址没有给定目标地址,则将以类似于"ls -l"的格式输出文件列表。
若给定的源地址和目标地址都不是远程地址,则在本机进行拷贝(见选项--list-only)。
Rsync命令中,本地端总是扮演"client"角色,远程端总是扮演"server"角色。不要混淆"server"和rsync daemon,rsync daemon一定是一个"server",但是"server"可能是一个rsync daemon也可能是远程shell派生出来的进程。
安装
请阅读README文件来查看安装说明。
当安装完成后,你可以通过远程shell(也可以通过rsync daemon协议)让rsync与任意你能访问的主机进行交流。对于远程传输,现代rsync使用ssh与其他主机进行交流,但是可以配置其他默认的远程shell,如rsh或remsh。
你也可以通过命令行的"-e"选项或设置RSYNC_RSH环境变量来指定你想要使用的远程shell。
rsync必须同时装在源主机和目标主机上。
用法
rsync的使用方法和rcp一样。你必须指定源地址和目标地址,其中一个可能是远程地址。
也许解释语法最好的方式是通过几个示例:
rsync -t .c foo:src/
这将会把当前目录下所有能匹配.c的文件传输到主机foo上的src目录下。如果远程主机上已经存在某些同名文件,rsync的远程更新(rsync-update)协议将会更新哪些有差异的文件。
rsync -avz foo:src/bar /data/tmp
这将会以递归方式把远程主机foo上的src/bar目录下的所有文件传输到本地主机的/data/tmp目录下。这些文件以归档(archive)模式传输,它保证在传输过程中保留符号链接、设备文件、属性、权限、所有者、所属组等。另外,在传输过程中会使用压缩功能以减少要传输的数据体积。
rsync -avz foo:src/bar/ /data/tmp
使用尾随斜线(/)改变了原本的行为,它避免了在目标地址创建一个额外的目录层次。带有尾随斜线时,你可以理解为"拷贝目录的内容"而不是拷贝"拷贝目录名"(译者注:即拷贝目录本身),但是这两种情况都会将目录中包含的文件传输到目标目录下。换句话说,下面两条命令都以相同的方式进行拷贝,包括/dest/foo的属性设置。
rsync -av /src/foo /dest
rsync -av /src/foo/ /dest/foo
还需要注意的是,拷贝主机或引用模块的默认目录不需要尾随斜线。例如,下面的命令都拷贝远程(默认)目录的内容到本地的"/dest"。
rsync -av host: /dest
rsync -av host::module /dest
你也可以仅使用rsync的仅本地(local-only)模式,此模式下的源地址和目标地址名称中都不需要冒号(
[转]rsync命令中文文档的更多相关文章
- PostgreSQL教程收集(中文文档/命令行工具/常用命令)
http://www.postgres.cn/docs/9.6/index.html(中文文档) https://www.postgresql.org/docs/10/static/auth-meth ...
- Phoenix综述(史上最全Phoenix中文文档)
个人主页:http://www.linbingdong.com 简书地址:http://www.jianshu.com/users/6cb45a00b49c/latest_articles 网上关于P ...
- ORCHARD中文文档(翻译)
众所周知,Orchard是.net领域最好的开源CMS之一,他使用了微软最先进的技术,有一群先进理念的支持者,但是,所有的事情在国内总得加个但是,Orchard也不例外,中文资料相对比较少,官网提供的 ...
- PHP开发框架Laravel优点,Laravel5.3中文文档
PHP开发框架Laravel优点 Laravel的设计思想是很先进的,非常适合应用各种开发模式TDD, DDD和BDD,作为一个框架,它为你准备好了一切,composer是个php的未来,没有comp ...
- Django 1.10中文文档—第一个Django应用Part1
在本教程中,我们将引导您完成一个投票应用程序的创建,它包含下面两部分: 一个可以进行投票和查看结果的公开站点: 一个可以进行增删改查的后台admin管理界面: 我们假设你已经安装了Django.您可以 ...
- 【Chromium中文文档】Chrome/Chromium沙箱 - 安全架构设计
沙箱 转载请注明出处:https://ahangchen.gitbooks.io/chromium_doc_zh/content/zh//General_Architecture/Sandbox.ht ...
- 【Chromium中文文档】Profile架构(看看谷歌家的重构)
进程模型 转载请注明出处:https://ahangchen.gitbooks.io/chromium_doc_zh/content/zh//General_Architecture/Profile_ ...
- 【Chromium中文文档】进程模型
进程模型 转载请注明出处:https://ahangchen.gitbooks.io/chromium_doc_zh/content/zh//General_Architecture/Process_ ...
- Core 中文文档
ASP.NET Core 中文文档 第二章 指南(1)用 Visual Studio Code 在 macOS 上创建首个 ASP.NET Core 应用程序 原文:Your First ASP. ...
随机推荐
- Java 之 JavaScript (二)
1.DOM a.作用:通过 HTML DOM,可访问 JavaScript HTML 文档的所有元素 b.功能: ①JavaScript 能够改变页面中的所有 HTML 元素 ②JavaScript ...
- Codeforces 1037D【BFS】
<题目链接> 题目大意: 给你一颗树的所有边,这些边是无向的,然后给你一段BFS序列,BFS都以1为根节点,判断这段BFS序列是否合法. 解题分析: 就是模拟BFS,某个父亲节点的所有子节 ...
- 机器学习实战笔记-k-近邻算法
机器学习实战笔记-k-近邻算法 目录 1. k-近邻算法概述 2. 示例:使用k-近邻算法改进约会网站的配对效果 3. 示例:手写识别系统 4. 小结 本章介绍了<机器学习实战>这本书中的 ...
- Scrapy基础(十)———同步机制将Item中的数据写在Mysql
前面讲解到将Item中的所有字段都已经填写完成,那么接下来就是将他们存储到mysql数据库中,那就用到了pipeline项目管道了: 对项目管道的理解:做一个比喻,爬取好比是开采石油,Item装 ...
- 潭州课堂25班:Ph201805201 django 项目 第三十六课 后台文章管理(课堂笔记)
get 请求, 1,获取文章标签 , 2,拿到前台传来的值, 3,根据前台传来的值在数据库中查询 4.,返回数据到前台,渲染, 分页算法 : 在 utils 下创建 paginator_script ...
- mongodb数据导入导出
1.导出: 2.导入: 注意headline,导入一定要跳过第一行,第一行是列名
- BZOJ3273 : liars
枚举每个人,计算他必定是诚实者的情况下至少有几个人说谎,若超过$t$则他肯定是说谎者. 对于至少有几个人说谎,区间信息可以合并: 每个区间维护最左最右两个人$l,r$以及$f[i][j]$表示$l$和 ...
- java中常用的进制转换
十进制转成十六进制: Integer.toHexString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成二进制 Integ ...
- JQ01
JQ01 1.使用js的缺点 innerText的兼容性问题:低版本火狐浏览器不支持 textContent:火狐支持,ie678不支持 2.JQ初体验 1) <!DOCTYPE html> ...
- Hibernate关系映射时出现的问题
在学习Hibernate框架的关系映射时,遇到了一个问题: INFO: HHH000422: Disabling contextual LOB creation as connection was n ...