rsync工具介绍、rsync常用选项、rsync通过ssh同步

rsync工具介绍

rsync同步工具(可以实现把一个文件拷贝到另一台机器,或者另一个目录,类似于cp命令但是又不同,当需要同步的源新增加了东西,可以只同步新增加的文件,而不需要整个覆盖。)

把/etc/passwd拷贝到tmp目录下并改名1.txt如下(其中选项a包含了很多选项,v是可视化。)
rsync -av /etc/passwd /tmp/1.txt

rsync工具介绍、rsync常用选项、rsync通过ssh同步

把passwd拷贝到如下ip的一台机器的root用户下的tmp目录,并改名1.txt,之后需要输入对方密码。(不加用户名默认就是当前的用户名)
rsync -av /tmp/1.txt root 192.168.188.128:/tmp/2.txt

rsync工具介绍、rsync常用选项、rsync通过ssh同步

同时我们也可以把远程的机器的文件或者目录拷贝到本地,就是将源目录和目标目录调一下位置(OPTION就是选项如-av,SRC原目录,DEST目标目录、文件)(user@不写的话就是当前终端的用户)
rsync [OPTION] … [user@]host:SRC DEST

rsync工具介绍、rsync常用选项、rsync通过ssh同步

rsync常用选项

-a 包含-rtplgoD

rsync工具介绍、rsync常用选项、rsync通过ssh同步

-L演示(如果使用大L就会自动隐藏小l的效果)把root下的huang文件同步到/tmp/下,并改名为huang_yang
rsync -avL /root/huang/ /tmp/huang_yang

rsync工具介绍、rsync常用选项、rsync通过ssh同步

--delte删除DEST中SRC没有的文件
我们先在/tmp/huang_yang/下再创建个文件,让他比原文件多点内容,然后看下是不是比原文件多点内容
touch /tmp/huang_yang/huang.txt

rsync工具介绍、rsync常用选项、rsync通过ssh同步

我们再使用--delte同步一次,然后查看多出来的文件还在不在
rsync -avL --delete /root/huang/ /tmp/huang_yang/

rsync工具介绍、rsync常用选项、rsync通过ssh同步

很明显,我们刚才创建的huang.txt已经没有了

--exclude,过滤指定文件
我们同步时,不同步.txt文件
rsync -avL --exclude "*.txt" /root/huang/ /tmp/huang_yang/

rsync工具介绍、rsync常用选项、rsync通过ssh同步

我们可以看到1.txt文件没有被同步

想要过滤多个文件时,可以写多个--exclude,一个--exclude后面不能写多个条件
比如我们过滤.txt和.tar
rsync -avL --exclude "*.txt" --exclude "*.tar" /root/huang/ /tmp/huang_yang/

rsync工具介绍、rsync常用选项、rsync通过ssh同步

.txt和.rat都未被同步过来

-P(大写)显示详细同步过程
rsync -avP /root/huang/ /tmp/huang_yang/

rsync工具介绍、rsync常用选项、rsync通过ssh同步

-u加上该选项后,如果DEST中的文件比SRC新,则不 同步
/root/huang目录下和/tmp/huang_yang都有yang文件,然后我们给/tmp/huang_yang的yang添加内容,然后使用带-u的命令,可以看到同步之后/tmp/huang_yang的yang并没有被覆盖。
我们先给/tmp/huang_yang/yang里添加一个名为2.txt的文档
然后对比一下两个yang目录可以看到,/tmp/huang_yang/yang里有个2.txt ,/huang/yang里没有2.txt
rsync工具介绍、rsync常用选项、rsync通过ssh同步

我们进行同步一下看
rsync -avPu /root/huang/ /tmp/huang_yang/

然后我们可以看到现在/tmp/huang_yang/yang/里还有2.txt

rsync工具介绍、rsync常用选项、rsync通过ssh同步

rsync通过ssh同步

rsync命令默认没有安装,需要安装rsync包。(两台都要安装)

rsync通过ssh方式同步
rsync -av test1/ 192.168.133.132:/tmp/test2/

rsync通过ssh方法同步:
将passwd同步到192.168.133.132机器上去,并改名aming.txt
rsync etc/passwd/ 192.168.133.132:/tmp/aming.txt

将192.168.133.132机器上的aming.txt同步到本机上的tmp目录下,并改名为123.txt
rsync -avP 192.168.133.132:/tmp/aming.txt /tmp/123.txt

如果对方机器并不是22端口,你可以使用如下方法指定端口


猜你喜欢

转载自blog.csdn.net/qq_39225153/article/details/80316268
今日推荐