没有合适的资源?快使用搜索试试~ 我知道了~
使用 rsync 同步
4星 · 超过85%的资源 需积分: 40 21 下载量 187 浏览量
2009-08-29
16:11:44
上传
评论
收藏 266KB PDF 举报
温馨提示
试读
13页
rsync(remote synchronize)是一个远程数据同步工具,可通过 LAN/WAN 快速同步多台主机之间的文 件。也可以使用 rsync 同步本地硬盘中的不同目录。 rsync 是用于替代 rcp 的一个工具,rsync 使用所谓的 rsync算法 进行数据同步,这种算法只传送两个文件 的不同部分,而不是每次都整份传送,因此速度相当快。 您可以参考 How Rsync Works A Practical Overview 进一步了解 rsync 的运作机制。
资源推荐
资源详情
资源评论
CentOS
丛书目录 —
系
统管理 —
网络服务 —
应用部署
使用
rsync
同步
rsync
简介
rsync
(
remote synchronize
)是一个远程数据同步工具,可通过
LAN/WAN
快速同步多台主机之间的文
件。也可以使用
rsync
同步本地硬盘中的不同目录。
rsync
是用于替代
rcp
的一个工具,
rsync
使用所谓的
rsync
算法 进行数据同步,这种算法只传送两个文件
的不同部分,而不是每次都整份传送,因此速度相当快。 您可以参考
How Rsync Works A Practical
Overview
进一步了解
rsync
的运作机制。
rsync
的初始作者是
Andrew Tridgell
和
Paul Mackerras
,目前由
http://rsync.samba.org
维护。
rsync
支持大多数的类
Unix
系统,无论是
Linux
、
Solaris
还是
BSD
上 都经过了良好的测试。
CentOS
系统默认就安装了
rsync
软件包。 此外,在
windows
平台下也有相应的版本,如
cwrsync
和
DeltaCopy
等。
rsync
具有如下的基本特性:
1.
可以镜像保存整个目录树和文件系统
2.
可以很容易做到保持原来文件的权限、时间、软硬链接等
3.
无须特殊权限即可安装
4.
优化的流程,文件传输效率高
5.
可以使用
rsh
、
ssh
方式来传输文件,当然也可以通过直接的
socket
连接
6.
支持匿名传输,以方便进行网站镜象
在使用
rsync
进行远程同步时,可以使用两种方式:远程
Shell
方式(建议使用
ssh
,用户验证由
ssh
负
责)和
C/S
方式(即客户连接远程
rsync
服务器,用户验证由
rsync
服务器负责)。
无论本地同步目录还是远程同步数据,首次运行时将会把全部文件拷贝一次,以后再运行时将只拷贝有变化的
文件(对于新文件)或文件的变化部分(对于原有文件)。
本节重点介绍
rsync
客户命令的使用,有关
rsync
服务器的配置和使用请参见下节。
rsync
在首次复制时没有速度优势,速度不如
tar
,因此当数据量很大时您可以考虑先使用
tar
进行首次复
制,然后再使用
rsync
进行数据同步。
镜像、备份和归档
实施备份的两种情况:
内容提要
1.
熟悉
rsync
的功能及其特点
2.
掌握
rsync
语法及常用选项的功能
3.
掌握
rsync
命令的三种基本使用方法
4.
掌握如何筛选
rsync
的传输目标
5.
掌握使用
rsync
进行镜像和增量备份的方法
需保留备份历史归档:在备份时保留历史的备份归档,是为了在系统出现错误后能恢复到从前正确的状态。
这可以使用完全备份和增量备份来完成。
可以使用
tar
命令保存归档文件。
为了提高备份效率,也可以使用
rsync
结合
tar
来完成。
无需保留备份历史归档:若无需从历史备份恢复到正确状态,则只备份系统最“新鲜”的状态即可。这可以
简单地使用
rsync
同步来完成。此时通常称为镜像。镜像可以分为两种:
被镜像的目录在各个主机上保持相同的位置。此时一般是为了实施负载均衡而对多个主机进行同步镜
像。例如:将主机
A
的
/srv/www
目录同步到主机
B
的
/srv/www
目录等。
被镜像的目录在各个主机上不保持相同的位置。例如:主机
A
和主机
B
都运行着各自的业务,同时又
互为镜像备份。此时主机
A
的
/srv/www
目录同步到主机
B
的
/backups/hosta/www
目录;主机
B
的
/srv/www
目录同步到主机
A
的
/backups/hostb/www
目录等。
rsync
命令
rsync
是一个功能非常强大的工具,其命令也有很多功能选项。
rsync
的命令格式为:
1
)本地使用:
rsync [OPTION...] SRC... [DEST]
2
)通过远程
Shell
使用:
拉
: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
推
: rsync [OPTION...] SRC... [USER@]HOST:DEST
3
)访问
rsync
服务器
:
拉
: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
推
: rsync [OPTION...] SRC... [USER@]HOST::DEST
拉
: rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
推
: rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST
其中:
SRC:
是要复制的源位置
DEST:
是复制目标位置
若本地登录用户与远程主机上的用户一致,可以省略
USER@
使用远程
shell
同步时,主机名与资源之间使用单个冒号“
:
”作为分隔符
使用
rsync
服务器同步时,主机名与资源之间使用两个冒号“
::
”作为分隔符
当访问
rsync
服务器时也可以使用
rsync:// URL
“拉”复制是指从远程主机复制文件到本地主机
“推”复制是指从本地主机复制文件到远程主机
当进行“拉”复制时,若指定一个
SRC
且省略
DEST
,则只列出资源而不进行复制
下面列出常用选项:
选项 说明
-a, ––archive
归档模式,表示以递归方式传输文件,并保持所有文件属性,等价于 -rlptgoD (注意不包
括
-H)
-r,
––recursive 对子目录以递归模式处理
-l, ––links 保持符号链接文件
-H, ––hard-links 保持硬链接文件
-p, ––perms 保持文件权限
若使用普通用户身份运行
rsync
命令,同步后的文件的属主将改变为这个普通用户身份。
若使用超级用户身份运行
rsync
命令,同步后的文件的属主将保持原来的用户身份。
rsync
的基本使用
-t, ––times 保持文件时间信息
-g, ––group 保持文件属组信息
-o, ––owner 保持文件属主信息 (super-user only)
-D
保持设备文件和特殊文件 (super-user only)
-z,
––compress 在传输文件时进行压缩处理
––
exclude=PATTERN 指定排除一个不需要传输的文件匹配模式
––
exclude-from=FILE 从 FILE 中读取排除规则
––
include=PATTERN 指定需要传输的文件匹配模式
––
include-from=FILE 从 FILE 中读取包含规则
––
copy-unsafe-links 拷贝指向SRC路径目录树以外的链接文件
––
safe-links
忽略指向
SRC
路径目录树以外的链接文件(默认)
––
existing 仅仅更新那些已经存在于接收端的文件,而不备份那些新创建的文件
––
ignore-existing 忽略那些已经存在于接收端的文件,仅备份那些新创建的文件
-b,
––
backup
当有变化时,对目标目录中的旧版文件进行备份
––
backup-dir=DIR 与 -b 结合使用,将备份的文件存到 DIR 目录中
––
link-dest=DIR 当文件未改变时基于 DIR 创建硬链接文件
––
delete 删除那些接收端还有而发送端已经不存在的文件
––
delete-before 接收者在传输之前进行删除操作 (默认)
––delete-during 接收者在传输过程中进行删除操作
––
delete-after 接收者在传输之后进行删除操作
––
delete-excluded 在接收方同时删除被排除的文件
-e, ––rsh=COMMAND 指定替代 rsh 的 shell 程序
––
ignore-errors 即使出现 I/O 错误也进行删除
––
partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输
––
progress 在传输时显示传输过程
-P
等价于 ––partial ––progress
––delay-updates
将正在更新的文件先保存到一个临时目录(默认为 “.~tmp~”),待传输完毕再更新目
标文件
-v, ––verbose 详细输出模式
-q,
––
quiet
精简输出模式
-h, ––human-readable 输出文件大小使用易读的单位(如,K,M等)
-n, ––dry-run 显示哪些文件将被传输
––
list-only 仅仅列出文件而不进行复制
––
rsync-
path=PROGRAM
指定远程服务器上的 rsync 命令所在路径
––
password-file=FILE 从 FILE 中读取口令,以避免在终端上输入口令,通常在 cron 中连接 rsync 服务器时使用
-4, ––ipv4 使用 IPv4
-6,
––ipv6 使用 IPv6
––version 打印版本信息
––
help 显示帮助信息
剩余12页未读,继续阅读
资源评论
- dazuiqiang622013-11-06不错,我现在就是用这个工具来同步!
jerry54
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功