详解linux中rsync的妙用[通俗易懂]

文章目录

    • 🔅1.rsync备份服务器软件介绍:
    • 🔅2.rsync软件作用说明:(1v4 cp/scp/rm/ls)
    • 🔅3.rsync软件特点说明:
    • 🔅4.rsync软件的工作方式:(如何应用)
    • 🔅5.实际应用的例子:
    • 🔅6.利用’拉’和’推’的方式实现数据同步命令详解

🔅1.rsync备份服务器软件介绍:

Rsync是一款开源的、快速的、多功能的、可实现全量及增长的本地或远程
数据同步备份的优秀工具。
增量备份:只同步变化的数据细腻些,主要利用了quick check算法实现
同步原理:
1)建立好网络连接
2)先进行数据信息对比
3)只将变化的数据进行增量备份

🔅2.rsync软件作用说明:(1v4 cp/scp/rm/ls)

<code style="margin-left:0">1)本地数据备份:cp
[root@backup ~]# cp -a /etc/hosts /tmp/hosts_cp
[root@backup ~]# ll /tmp/hosts_cp
-rw-r--r--. 1 root root 349 Jun 20 05:59 /tmp/hosts_cp
[root@backup ~]# rsync -a /etc/hosts /tmp/hosts_rsync
[root@backup ~]# ll /tmp/hosts_rsync
-rw-r--r-- 1 root root 349 Jun 20 05:59 /tmp/hosts_rsync</code>

PS:*****
rsync -a /null/ /tmp/ 同步目录的时候,目录后面有/(/null/),表示将目录下面的内容进行备份同步
rsync -a /null /tmp/ 同步目录的时候,目录后面没有/(/null),表示将目录下面的内容及目录本身进行备份同步

<code style="margin-left:0">2)远程数据备份:scp
[root@nfs01 ~]#scp -rp /etc/sysconfig/network 172.16.1.41:/tmp/network_scp
[root@nfs01 ~]#rsync -rp /etc/sysconfig/network 172.16.1.41:/tmp/network_rsync</code>

<code style="margin-left:0">3)数据删除操作:rm
[root@nfs01 ~]#rsync -a --delete /null/ /tmp/</code>

<code style="margin-left:0">4)查看数据信息:ls
[root@backup ~]# rsync /etc/hosts
-rw-r--r--    349 2020/06/20 05:59:49 hosts</code>

PS:172.16.1.41是接收端服务器ip地址,“:”是判断ip尾部的终止符号

🔅3.rsync软件特点说明:

<code style="margin-left:0">1)支持拷贝普通文件与特殊文件入链接文件、设备等
2)可以排除指定文件或目录同步的功能,相当于打包命令tar的排除功能
3)可以保持原文件或目录的权限、时间、软硬链接、属主、组等所有属性均不变-p
4)可以增量同步,既只同步发生变化的数据,因此数据传输效率很高(tar-N)
5)可以使用rcp,rsh,ssh等方式来配合进行隧道加密传输文件(rsync本身不对数据加密)
6)可以通过socket(进程方式)传输文件和数据(服务器和客户端)
7)支持匿名的或认证(无需系统用户)的进程模式传播,可实现方便安全的进行数据备份及镜像</code>

🔅4.rsync软件的工作方式:(如何应用)

<code style="margin-left:0">1)本地备份数据方式(同等cp命令)
Local:  rsync [OPTION...] SRC... [DEST]
rsync           ---数据备份命令
[OPTION...]     ---命令参数信息
src             ---要进行同步备份的源文件或目录信息
[DEST]          ---将数据备份同步到本地系统中的什么路径下</code>

<code style="margin-left:0">2) 远程备份数据方式(同等scp命令)
Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
rsync           ---数据备份命令
[OPTION...]     ---命令参数信息
[USER@]         ---以什么用户身份进行数据拉去
HOST(主机名或ip地址):SRC    ---从哪个远程主机上,将指定的数据进行备份同步
                   [DEST]   ---将远程主机拉去过来的数据保存到本地什么路径中</code>

🔅5.实际应用的例子:

1)将bacuop服务器上/tmp/ppp123.txt数据拉取备份到本地nfs服务器/opt目录中?

<code style="margin-left:0">[root@nfs01 ~]# # Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
[root@nfs01 ~]# rsync -a 172.16.1.41:/tmp/ppp123.txt /opt 
[root@nfs01 ~]# ll /opt/oldboy123.txt
-rw-r--r-- 1 root root 0 Jun 20 11:20 /opt/ppp123.txt</code>

2)将nfs服务器上/tmp目录进行推操作到备份服务器的/usr/local目录中

<code style="margin-left:0">[root@nfs01 ~]# #Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
[root@nfs01 ~]# rsync -a 172.16.1.41:/tmp /usr/local
[root@backup ~]# ll /usr/local</code>

🔅6.利用’拉’和’推’的方式实现数据同步命令详解

1) 从备份服务器上将数据拉取到本地,用于数据恢复

<code style="margin-left:0"> Access via rsync daemon:
Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
rsync           ---数据备份命令
OPTION...]      ---命令参数信息
[USER@]         ---指定进行传输数据认证用户信息
HOST::          ---指定备份服务器的ip地址或主机名称信息
SRC             ---指定备份服务器上模块名称
[DEST]          ---将数据传输同步到本地主机的指定路径下
	
rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
总结:从备份服务器上将数据拉取到本地,用于数据恢复</code>

2)从存储服务器上将数据推送到远程服务器上,用数据备份

<code style="margin-left:0">Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
rsync           ---数据备份命令
OPTION...]      ---命令参数信息
SRC...          ---指定将本地服务器上数据进行备份
[USER@]         ---指定进行传输数据认证用户信息 
HOST::          --- 指定备份服务器的ip地址或主机名称信息
DEST            ---指定备份服务器上模块名称
	
rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST
总结:从存储服务器上将数据推送到远程服务器上,用数据备份</code>

参照服务器:在什么服务器执行操作命令,对应的服务器就是参照服务器
推:在参照服务器上执行命令,将本地数据怼到远程主机上
拉:在参照服务器上执行命令,将远程数据怼到本地主机上

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/182293.html原文链接:https://javaforall.cn

未经允许不得转载:木盒主机 » 详解linux中rsync的妙用[通俗易懂]

赞 (0)

相关推荐

    暂无内容!