Rsync呢,比scp要快很多。
所以无论是本地文件/目录拷贝,还是远程拷贝,用rsync都比较好。

Rsync的基本参数

  • -a : 归档模式,递归拷贝,带属性。
  • -v : 详细显示信息
  • -r : 递归拷贝,不带属性
  • -z : 压缩
  • -h : 显示友好信息

注意:

rsync的基本用法是:

rsync 源 目的

  • 源中如果最后是/,意思是/*,代表只拷贝目录下的文件,不包括目录本身
  • 源中如果没有/,代表连同目录以及目录下的文件,统统拷贝到目的去

一、本地文件和目录的操作

rsync -zvh backup.tar /tmp/backups/  
rsync -avzh /root/rpmpkgs /tmp/backups/  

二、远程文件的操作

rsync -avz rpmpkgs/ root@192.168.0.101:/home/  
rsync -avzh root@192.168.0.100:/home/tarunika/rpmpkgs /tmp/myrpms  

三、通过ssh来执行rsync,-e参数

rsync -avzhe ssh root@192.168.0.100:/root/install.log /tmp/  
rsync -avzhe ssh backup.tar root@192.168.0.100:/backups/  

四、显示传输过程

rsync -avzhe ssh --progress /home/rpmpkgs root@192.168.0.100:/root/rpmpkgs  

五、文件的排除与包含

rsync -avze ssh --include 'R*' --exclude '*' root@192.168.0.101:/var/lib/rpm/ /root/rpm  

六、完全同步 --delete,源目保持完全一致

rsync -avz --delete root@192.168.0.100:/var/lib/rpm/ .  

七、限制传输文件的最大尺寸,大于200k的文件不会被传输

rsync -avzhe ssh --max-size='200k' /var/lib/rpm/ root@192.168.0.100:/root/tmprpm  

八、传输完成后删除源文件

rsync --remove-source-files -zvh backup.tar /tmp/backups/  

九、新手必备,实际不做任何操作,只显示过程

rsync --dry-run --remove-source-files -zvh backup.tar /tmp/backups/  

十、限速,500kb*8=4M,限速是4兆。

rsync --bwlimit=500 -avzhe ssh  /var/lib/rpm/  root@192.168.0.100:/root/tmprpm/  
rsync只同步变动的部分,如果要同步整个部分,用W参数  
rsync -zvhW backup.tar /tmp/backups/backup.tar  
comments powered by Disqus