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