rsync文件同步

rsync常用选项

-a 包含-rtplgoD
-r 同步目录时要加上,类似cp时的-r选项
-t 保持文件的时间属性
-p 保持文件的权限属性
-l 保留软连接
-g 保持文件的属组
-o 保持文件的属主
-D 保持设备文件信息
-v 同步时显示一些信息,让我们知道同步的过程
-z 传输时压缩

-L 加上该选项后,同步软链接时会把源文件给同步
--delete 删除DEST中SRC没有的文件
--exclude 过滤指定文件,如--exclude “logs”会把文件名包含logs的文件或者目录过滤掉,不同步
--progress 在传输时显示传输过程
-P 显示同步过程,比如速率,比-v更加详细,same as --partial --progress
-u 加上该选项后,如果DEST中的文件比SRC新,则不同步
-h 帮助

【常用】rsync -avz --progress  源文件|文件夹  目标文件|文件夹

【例子1】rsync -avzP /tmp/a.txt [email protected]: /tmp/ 

【例子2】rsync -avzP /home/work [email protected]: ~/(把整个work目录原封不动拷贝到~下,如果work后面带个/则是拷贝work下的所有目录)

因为默认sync是要先diff文件,比较文件时间戳和大小几个特征再决定要不要传文件,所以传输很慢,我这里是1K/s不到的速度。

如何解决这个问题?

答案很简单,去掉不必要的校验,比如diff,大小比较可以保留。这个时候就需要我大W选项,只去掉diff。

rsync -avzPW /home/work [email protected]: ~/

rsync通过ssh方式同步

推文件:

rsync文件同步_第1张图片

拉文件:

rsync文件同步_第2张图片

 

你可能感兴趣的:(Linux,Linux相关软件,rsync)