Rsync速度测试对比
rsync的--bwlimit用法

rsync的--bwlimit用法Rsync是一个强大的文件同步和备份工具,可以在本地或远程主机之间同步文件和目录。
它可以减少传输量、节省存储空间和时间。
Rsync的bwlimit选项是一个用于限制带宽的选项,可以控制rsync命令在传输文件时所使用的网络带宽。
本文将详细介绍rsync的bwlimit用法,并提供一步一步的指导。
1. Rsync简介Rsync是一个开源的、快速、灵活的文件复制工具,最初由Andrew Tridgell 于1996年开发。
它在UNIX和类UNIX系统上运行,并提供了强大的文件同步和备份功能。
Rsync利用delta算法实现增量复制,只传输文件在源和目标之间的差异部分,从而大大减少了数据传输量,并提高了传输效率。
2. Rsync的bwlimit选项Rsync的bwlimit选项用于限制文件传输过程中使用的带宽。
它可以确保rsync 不会占用过多的网络带宽,从而避免影响其他网络活动。
bwlimit选项接受一个带宽参数,可以用来限制传输速度。
3. bwlimit选项的语法Rsync的bwlimit选项的语法如下:bwlimit=<速度>其中,速度可以用以下单位表示:- 以字节为单位:如100、1000(默认单位是字节)- 以千字节为单位:添加'k'或'K'后缀,如100k、1000K- 以兆字节为单位:添加'm'或'M'后缀,如10m、100M- 以倍数为单位:倍数后跟'c',如1c表示原始链接的速度,2c表示像这样的两倍速度4. 用法示例假设我们要将本地目录/home/user1下的所有文件同步到远程主机的目录/home/user2下,同时限制传输速度为10MB/s。
我们可以执行以下命令:rsync bwlimit=10m /home/user1 user2@remote:/home/user2在这个例子中,我们使用bwlimit=10m选项来限制传输带宽为10MB/s。
rsync功能详解

rsync 功能详解目录第一章引言 (2)1.1. 编写目的 (2)1.2. 背景 (2)1.3. 参考资料.................................................................................... 错误!未定义书签。
第二章工具概述 (3)2.1. 简介 (3)2.2. 特性 (3)第三章运行环境 (4)3.1. 硬件要求 (4)3.2. 软件依赖 (4)第四章安装配置 (5)4.1. 安装包获取 (5)4.2. 安装 (5)4.3. 服务端配置 (5)4.4. 服务端启动 (6)第五章使用说明 (7)5.1. 服务端 (7)5.2. 客户端 (10)第一章引言1.1. 编写目的本文档是对rsync数据同步工具的使用说明手册,在本文档对rsync数据同步工具的使用场景、操作命令、参数进行了详细具体的描述,通过该文档读者可以了解该工具的所有功能以及具体操作命令。
1.2. 背景该工具使用者主要面向公司项目管理者、项目实施人员、系统维护人员及其他有关人员。
工具主要功能为系统数据迁移,使用时项目管理者与客户沟通,将工具部署在客户环境,对用户数据进行远程传输迁移。
第二章工具概述2.1. 简介rsync是一个数据同步工具,即可实现本地数据同步,也可实现本地和远端两个主机数据同步,通过LAN/WAN快速同步多台主机间的文件。
rsync引用“Rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法可以实现只传送两个文件的不同部分,而不是每次都整份传送,因此速度比较快。
rsync工具分为两个部分:服务端和客户端,服务端以daemon模式去运行,在以daemon 方式运行时,rsync server会打开一个873端口,等待客户端去连接。
连接时,rsync server 会检查口令是否相符,若通过口令检查,则可以开始进行文件传输,rsync也支持匿名传输。
rsync 常用参数

rsync 常用参数摘要:1.RSync简介2.RSync常用参数介绍a.一般参数b.文件匹配参数c.传输参数d.安全性参数e.其他实用参数3.总结与建议正文:RSync是一款强大的同步工具,它可以实现本地文件夹与远程文件夹之间的同步,同时支持版本控制和增量同步。
以下是RSync常用的参数介绍,帮助大家更好地使用这款工具。
1.RSync简介RSync(Remote Sync)是一款开源的文件同步工具,起源于Unix 系统的rsync 命令。
它具有高度可定制性,可以根据需求进行详细的配置。
RSync 通过SSH 协议进行数据传输,从而实现快速、安全的文件同步。
2.RSync常用参数介绍a.一般参数- -a:归档模式,表示以归档方式传输文件,保留文件属性、时间戳等。
- -v:详细输出模式,显示同步过程中的详细信息。
- -q:安静模式,不显示任何信息,但仍然返回错误信息。
- -r:递归同步,同步目录及其子目录。
- -h:隐藏文件和目录名中的主机名,仅显示文件名。
b.文件匹配参数- -i:忽略文件大小写差异。
- -I:忽略文件属性差异。
- --progress:显示同步进度。
- --password-file:指定密码文件,用于身份验证。
c.传输参数- -z:压缩传输,减少带宽占用。
- -X:启用压缩算法,提高传输速度。
- --max-transfer-size:设置最大传输块大小。
- --bwlimit:限制带宽使用。
d.安全性参数- -e:指定SSH连接命令,如使用SSH加密传输。
- --rsh:指定远程shell命令,用于执行远程操作。
- --password:指定SSH密码。
e.其他实用参数- --no-latest:不使用latest 文件,用于版本控制。
- --no-incr:禁用增量同步。
- --human-readable:以人类可读的格式显示文件大小。
3.总结与建议RSync 是一款功能强大的文件同步工具,通过灵活的参数配置,可以满足各种同步需求。
rsync限制速度(防止rsync耗带宽)

完成!
这篇文章主要介绍了nexus私服的搭建原理及教程解析文中通过示例代码介绍的非常详细对大家的学习或者工作具有一定的参考学习价值需要的朋友可以参考下rsy源自c限制速度(防止 rsync耗带宽)
有些机房会限制机器的流量,为了不触及底线,在使用scp和rsync的时候都要注意。 为了避免你的scp或者rsync因为无良&懒惰的OPS设置防火墙的偷懒而造成的断流现象,我们必须对自己的数据传输进行一 定的限流措施,慢一点总比被掐了的好。因此(限制为 1M Bytes/s): scp -l 10000 某个大文件 你的账号@远程的机器或者rsync是(限制为 60k Bytes/s): rsync 限制速度很简单,添加个参数即可bwlimit,后面的值是多少k Bytes/s 如:限制为 1000k Bytes/s): 复制代码 代码如下:
Linux下几种文件传输命令

Linux下⼏种⽂件传输命令Linux下⼏种⽂件传输命令 sz rz sftp scp最近在部署系统时接触了⼀些⽂件传输命令,分别做⼀下简单记录:1.sftpSecure Ftp 是⼀个基于SSH安全协议的⽂件传输管理⼯具。
由于它是基于SSH的,会在传输过程中对⽤户的密码、数据等敏感信息进⾏加密,因此可以有效的防⽌⽤户信息在传输的过程中被窃取,⽐FTP有更⾼的安全性。
在功能⽅⾯与FTP很类似,不仅可以传输⽂件数据,⽽且可以进⾏远程的⽂件管理(如建⽴,删除,查看⽂件列表等操作)。
Sftp与ftp虽然只有⼀字之差,但基于的传输协议却是不同的。
因此不能⽤sftp client去连接ftp server 也不能⽤ ftp client 去连接 sftp server。
建⽴连接:sftp user@host从本地上传⽂件:put localpath下载⽂件:get remotepath与远程相对应的本地操作,只需要在命令前加上”l” 即可,⽅便好记。
例如:lcd lpwd lmkdir2.scpSCP :secure copy (remote file copy program) 也是⼀个基于SSH安全协议的⽂件传输命令。
与sftp不同的是,它只提供主机间的⽂件传输功能,没有⽂件管理的功能。
复制local_file 到远程⽬录remote_folder下scp local_file remote_user@host:remote_folder复制local_folder 到远程remote_folder(需要加参数 -r 递归)scp –r local_folder remote_user@host:remote_folder以上命令反过来写就是远程复制到本地3.sz/rzsz/rz 是基于ZModem传输协议的命令。
对传输的数据会进⾏核查,并且有很好的传输性能。
使⽤起来更是⾮常⽅便,但前提是window端需要有能够⽀持ZModem的telnet或者SSH客户端,例如secureCRT。
Linux命令高级技巧使用findgrepdiffxargs和rsync命令进行文件和比较搜索和同步

Linux命令高级技巧使用findgrepdiffxargs和rsync命令进行文件和比较搜索和同步Linux命令高级技巧:使用find、grep、diff、xargs和rsync命令进行文件比较、搜索和同步Linux操作系统作为一种开源的操作系统,以其高度可定制、灵活性强和安全性好等优势广受欢迎。
作为Linux用户,熟练掌握一些高级命令技巧,可以提高工作效率和解决问题的能力。
本文将介绍一些常用的Linux命令高级技巧,包括find、grep、diff、xargs和rsync命令的使用,帮助读者更好地进行文件比较、搜索和同步操作。
一、find命令find命令是Linux系统中一个非常有用的查找工具,可以根据指定的条件,在文件系统中搜索符合条件的文件。
其基本的语法格式如下:find [路径] [选项] [操作]其中,路径表示搜索的起始路径,选项用于指定搜索条件,操作表示对搜索到的文件进行的一些操作。
举个例子,如果我们要在当前目录及其子目录中查找文件名以".txt"结尾的文件,可以使用如下命令:find . -name "*.txt"该命令表示在当前目录及其子目录中查找文件名以".txt"结尾的文件,并输出相应的结果。
二、grep命令grep命令是Linux系统中一个强大的文本搜索工具,可以根据指定的模式在文件中查找符合条件的内容。
其基本的语法格式如下:grep [选项] [模式] [文件名]其中,选项用于指定搜索的方式和一些其他的参数,模式表示要搜索的内容的规则或关键词,文件名表示需要进行搜索的文件。
例如,我们要在文件file.txt中查找包含字符串"hello"的行,可以使用如下命令:grep "hello" file.txt该命令表示在文件file.txt中查找包含字符串"hello"的行,并输出相应的结果。
rsync 常用参数
rsync 常用参数摘要:1.rsync 概述2.rsync 常用参数介绍2.1 -a:归档模式2.2 -v:详细输出2.3 -e:设定传输编码2.4 -z:压缩2.5 -t:创建目标目录2.6 -p:保持文件属性2.7 -i:忽略文件修改时间2.8 -r:递归复制2.9 -u:更新目标文件2.10 -l:列出文件列表2.11 -L:限速2.12 -P:保留原文件属性2.13 -O:创建目标目录2.14 -n:不覆盖已存在文件2.15 -W:不提示覆盖文件2.16 -B:使用二进制模式传输文件2.17 -s:同步文件修改时间2.18 -c:强制覆盖已存在文件2.19 -V:显示版本信息2.20 -h:帮助正文:rsync 是一个在Linux 系统中广泛使用的开源工具,用于在本地计算机和远端计算机之间进行文件和目录的同步。
它支持多种文件系统,如ext3、ext4、xfs 等,并具有高速、安全、可靠的特点。
下面我们来详细了解一下rsync 的一些常用参数。
1.-a:归档模式使用此参数后,rsync 会在传输文件的同时,将文件的修改时间、访问时间和访问权限等信息一同传输,以保证源文件和目标文件的完整性。
2.-v:详细输出此参数会显示详细的输出信息,包括文件传输过程中的进度、速度、文件大小等。
3.-e:设定传输编码通过此参数,用户可以设定传输过程中的编码方式,如使用base64 编码进行传输。
4.-z:压缩此参数会在传输文件时进行压缩,以减小传输的数据量,提高传输速度。
5.-t:创建目标目录当目标目录不存在时,使用此参数会自动创建目标目录。
6.-p:保持文件属性使用此参数后,rsync 会保持源文件的属性(如文件所有者、文件权限等)不变,以保证目标文件与源文件一致。
7.-i:忽略文件修改时间在传输文件时,此参数会忽略源文件和目标文件的修改时间,使得传输过程更加快速。
8.-r:递归复制使用此参数后,rsync 会递归地复制源目录下的所有文件和子目录,直到遇到空目录或达到目标目录。
Linux命令高级技巧使用rsync命令进行增量备份和同步
Linux命令高级技巧使用rsync命令进行增量备份和同步Linux命令高级技巧:使用rsync命令进行增量备份和同步Linux系统是一种开源的操作系统,广泛应用于服务器和个人计算机等各个领域。
作为一个Linux用户,了解一些高级技巧和命令可以帮助你更高效地管理和维护系统。
在本文中,我们将介绍如何使用rsync 命令进行增量备份和同步,以保护你的数据安全。
一、什么是rsync命令rsync是一个强大的文件传输和备份工具,它可以在本地或者远程主机之间同步和传输文件。
与普通的拷贝命令(如cp)相比,rsync命令有以下几个优势:1.增量备份:rsync命令只会传输被更改过的文件或新增的文件,大大减少了传输的数据量和时间;2.传输速度快:rsync通过智能的算法,只传输两个文件之间的差异部分,提高了传输速度;3.支持远程备份:rsync可以通过SSH协议进行远程备份和同步。
二、rsync命令的基本用法rsync命令的基本用法如下:rsync [options] source destination其中,source表示源文件或者目录,destination表示目标路径。
1.同步本地文件夹要同步两个本地文件夹,可以使用如下命令:rsync -avh /path/to/source /path/to/destination其中,-a表示归档模式,保留文件的所有属性(如权限、时间等),-v表示显示详细信息,-h表示以人类可读的方式显示文件大小。
2.远程备份要通过rsync进行远程备份,需要在命令中加入远程主机的地址和用户名,如下所示:rsync -avh /path/to/source username@remote:/path/to/destination其中,username是远程主机的用户名,remote是远程主机的地址。
你还可以通过添加-p参数指定端口号,以及使用--exclude选项排除某些文件或文件夹。
rsync命令详解
rsync命令详解1. rsync与scp的区别:==》scp 是 secure copy 的缩写,⽤于远程的⽂件的复制。
==》rsync 是 remote sync 的缩写,⽤于linux系统下的数据镜像备份⼯具,远程服务器之间的⽂件拷贝。
scp是相当于复制,黏贴,如果有的话是覆盖,⽐较耗时间,不智能。
rsync是复制,如果有重复的⽂件,会直接跳过,⽽且他⾃⼰的算法优化。
scp是把⽂件全部复制过去,当⽂件修改后还是把所有⽂件复制过去,rsync 第⼀次是把所有⽂件同步过去,当⽂件修改后,只把修改的⽂件同步过去。
2. rsync命令格式:rsyncrsync [OPTION]... SRC DESTrsync [OPTION]... SRC [USER@]HOST:DESTrsync [OPTION]... [USER@]HOST:SRC DESTrsync [OPTION]... [USER@]HOST::SRC DESTrsync [OPTION]... SRC [USER@]HOST::DESTrsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST][功能]更快更好地远程拷贝⽂件(可以替代rcp)。
[描述]rsync的命令格式可以为以下六种:rsync [OPTION]... SRC DESTrsync [OPTION]... SRC [USER@]HOST:DESTrsync [OPTION]... [USER@]HOST:SRC DESTrsync [OPTION]... [USER@]HOST::SRC DESTrsync [OPTION]... SRC [USER@]HOST::DESTrsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]对应于以上六种命令格式,rsync有六种不同的⼯作模式:1)拷贝本地⽂件。
linux rsync校验方法
linux rsync校验方法1. rsync命令用于在Linux系统上同步文件和目录。
The rsync command is used to synchronize files and directories on Linux systems.2. rsync可以通过网络连接远程主机来同步文件,也可以在本地计算机之间进行同步。
rsync can synchronize files by connecting to remote hosts over the network, or between local computers.3. rsync能够快速地同步大量数据,只传输发生变化的部分,节省带宽和时间。
rsync can quickly synchronize large amounts of data, only transferring the changed parts, saving bandwidth and time.4.在使用rsync进行文件同步时,可以选择校验文件内容以确保数据的完整性。
When using rsync for file synchronization, you can choose to verify file contents to ensure data integrity.5. rsync提供了多种校验方法,可以根据实际需要选择合适的方式。
rsync offers multiple verification methods, allowing you to choose the appropriate method based on your needs.6.一种常见的校验方法是使用MD5校验和,对文件内容进行哈希计算并进行比对。
One common verification method is to use MD5 checksums, calculating hashes of file contents and comparing them.7.使用MD5校验和可以检测文件内容是否被篡改,确保同步后的文件与源文件一致。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Rsync速度测试对比
本文链接: /2009/02/21/rsync-test.html
因为一直对rsync的速度有疑问,所以昨天测试了一下.测试的环境为了1000M的网络..二天机器各接了一个存储.同步一个大的文件,所以大量的小问题不在考虑的范围.主要是速度测试.
对比的项目.
1.rsync使用ssh和不使用ssh时的速度分别(其实默认也是ssh).
2.使用NFS挂到本地,然后在本地rsync的速度和rsync对比
3.使用NFS挂到本地,然后cp到本地的速度来对比
4.加优化的参数对比
使用rsync的ssh的方法来传送文件,看看会不会慢很多
time rsync -avlR -e ssh
Pearl.Harbor.Blu-Ray.Remux.MPEG2.1080P.DTS.LPCM.DD51.Fanxy\@Silu.mkv 172.16.xxx.xxx:/data/
sending increm ental file list
Pearl.Harbor.Blu-Ray.Remux.MPEG2.1080P.DTS.LPCM.DD51.Fanxy@Silu.mkv
sent 4370744200 bytes received 31 bytes 19821969.30 bytes/sec
total size is 4370210591 speedup is 1.00
real 3m40.864s
user 1m36.867s
sys 0m37.546s
去掉ssh的选项来对比
time rsync
-avlR Pearl.Harbor.Blu-Ray.Remux.MPEG2.1080P.DTS.LPCM.DD51.Fanxy\@Silu. mkv 172.16.xxx.xxx:/data
sending increm ental file list
Pearl.Harbor.Blu-Ray.Remux.MPEG2.1080P.DTS.LPCM.DD51.Fanxy@Silu.mkv
sent 4370744200 bytes received 31 bytes 19643794.30 bytes/sec
total size is 4370210591 speedup is 1.00
real 3m41.538s
user 1m37.270s
sys 0m37.984s
给nfs来mount到本地,使用rsync同步,看看是否会快些
time rsync
-avlR Pearl.Harbor.Blu-Ray.Remux.MPEG2.1080P.DTS.LPCM.DD51.Fanxy\@Silu. mkv /data
sending incremental file list
Pearl.Harbor.Blu-Ray.Remux.MPEG2.1080P.DTS.LPCM.DD51.Fanxy@Silu.mkv
sent 4370744200 bytes received 31 bytes 19732479.60 bytes/sec
total size is 4370210591 speedup is 1.00
real 3m40.754s
user 0m28.250s
sys 0m22.297s
使用cp命令来测试
time cp
Pearl.Harbor.Blu-Ray.Remux.MPEG2.1080P.DTS.LPCM.DD51.Fanxy\@Silu.mkv / data/
real 3m41.571s
user 0m0.444s
sys 0m5.324s
加入size-only参数后对比
time rsync -avl
–size-only Pearl.Harbor.Blu-Ray.Remux.MPEG2.1080P.DTS.LPCM.DD51.Fanxy\@ Silu.mkv 172.16.xxx.xxx:/data
sending increm ental file list
Pearl.Harbor.Blu-Ray.Remux.MPEG2.1080P.DTS.LPCM.DD51.Fanxy@Silu.mkv
sent 4370744200 bytes received 31 bytes 21799223.10 bytes/sec
total size is 4370210591 speedup is 1.00
real 3m20.962s
user 1m37.645s
sys 0m37.688s
加入blocking-io参数对比
time rsync -avl
–size-only –blocking-io Pearl.Harbor.Blu-Ray.Remux.MPEG2.1080P.DTS.LPCM. DD51.Fanxy\@Silu.mkv 172.16.xxx.xxx:/data
sending increm ental file list
Pearl.Harbor.Blu-Ray.Remux.MPEG2.1080P.DTS.LPCM.DD51.Fanxy@Silu.mkv
sent 4370744200 bytes received 31 bytes 2xxx2973.19 bytes/sec
total size is 4370210591 speedup is 1.00
real 3m15.617s
user 1m37.587s
sys 0m37.793s
由上面可以看出来,使用nfs来mount和远程直接rsync速度没有分别,单线程的rsync都很快,打不满网络.如果是文件对比少的话,rsync和使用cp的时间基本一样.另外加入优化参数能提高rsync的速度,但是我不太明白blocking-io 表示什么意思,有达人知道,请告诉….
另外给大家放上我写的一个简单的perl程序来控制rsync多线程同步
#!/usr/bin/perl
my$path="/data";#本地目录
my$ip="172.16.xxx.xxx";#远程目录
my$maxchild=5;#同时并发的个数
open FILE,"ls $path|";
while()
{
chomp;
my$filename=$_;
my$i=1;
while($i<=1){
my$un=`ps -ef |grep rsync|grep -v grep |grep avl|wc -l`;
$i=$i+1;
if($un<$maxchild){
system("rsync -avl --size-only $path/$_ $ip:$path &");
}else{
sleep5;
$i=1;
}
}
}
rsync同步的多进程脚本
为了备份网站数据,服务器主机在电信线路,备份主机在移动线路。
单个连接的网速基本上就200kbps,可是rsync的客户端没办法同时启动多个连接进行同步,带宽利用不么10%。
参考了:/2009/02/21/rsync-test.html
用PHP改一改,在LINUX下测试OK,基于WINDOWS应该也可以。
启动多个连接进行同步,效率大大提高。
适合暴力解决互联互通问题
<?php
$dir='/var/www/';//要备份的本地文件夹
$remote_prefix="your.ip::dest //rsync主机的IP和目标
$local_prefix = "sub_folder"; //对应的子文件夹
$max_connect = 10; //最大的连接
$files = scandir($dir, 2);
array_pop($files);
array_pop($files);
//print_r($files);
while (true)
{
$i = shell_exec("ps agx|grep 'rsync -v $local_prefix'|wc -l"); echo "count:".$i."\n";
if ($i <= $max_connect)
{
$file_name = array_shift($files);
if(empty($file_name)) exit();
$file_name = $local_prefix.$file_name;
$cmd = "rsync -v $file_name$remote_prefix/$file_name-v -rlt --progress";
$file_name = str_replace('/', '_', $file_name);
$cmd .= ' >> '.$file_name.'.log &';
system("$cmd");
echo "count:$i exec:".$cmd."\n。