详解linux中rsync的妙用
Posted 海鸥爱上鱼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了详解linux中rsync的妙用相关的知识,希望对你有一定的参考价值。
文章目录
🔅1.rsync备份服务器软件介绍:
Rsync是一款开源的、快速的、多功能的、可实现全量及增长的本地或远程
数据同步备份的优秀工具。
增量备份:只同步变化的数据细腻些,主要利用了quick check算法实现
同步原理:
1)建立好网络连接
2)先进行数据信息对比
3)只将变化的数据进行增量备份
🔅2.rsync软件作用说明:(1v4 cp/scp/rm/ls)
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
PS:*****
rsync -a /null/ /tmp/ 同步目录的时候,目录后面有/(/null/),表示将目录下面的内容进行备份同步
rsync -a /null /tmp/ 同步目录的时候,目录后面没有/(/null),表示将目录下面的内容及目录本身进行备份同步
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
3)数据删除操作:rm
[root@nfs01 ~]#rsync -a --delete /null/ /tmp/
4)查看数据信息:ls
[root@backup ~]# rsync /etc/hosts
-rw-r--r-- 349 2020/06/20 05:59:49 hosts
PS:172.16.1.41是接收端服务器ip地址,“:”是判断ip尾部的终止符号
🔅3.rsync软件特点说明:
1)支持拷贝普通文件与特殊文件入链接文件、设备等
2)可以排除指定文件或目录同步的功能,相当于打包命令tar的排除功能
3)可以保持原文件或目录的权限、时间、软硬链接、属主、组等所有属性均不变-p
4)可以增量同步,既只同步发生变化的数据,因此数据传输效率很高(tar-N)
5)可以使用rcp,rsh,ssh等方式来配合进行隧道加密传输文件(rsync本身不对数据加密)
6)可以通过socket(进程方式)传输文件和数据(服务器和客户端)
7)支持匿名的或认证(无需系统用户)的进程模式传播,可实现方便安全的进行数据备份及镜像
🔅4.rsync软件的工作方式:(如何应用)
1)本地备份数据方式(同等cp命令)
Local: rsync [OPTION...] SRC... [DEST]
rsync ---数据备份命令
[OPTION...] ---命令参数信息
src ---要进行同步备份的源文件或目录信息
[DEST] ---将数据备份同步到本地系统中的什么路径下
2) 远程备份数据方式(同等scp命令)
Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
rsync ---数据备份命令
[OPTION...] ---命令参数信息
[USER@] ---以什么用户身份进行数据拉去
HOST(主机名或ip地址):SRC ---从哪个远程主机上,将指定的数据进行备份同步
[DEST] ---将远程主机拉去过来的数据保存到本地什么路径中
🔅5.实际应用的例子:
1)将bacuop服务器上/tmp/ppp123.txt数据拉取备份到本地nfs服务器/opt目录中?
[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
2)将nfs服务器上/tmp目录进行推操作到备份服务器的/usr/local目录中
[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
🔅6.利用’拉’和’推’的方式实现数据同步命令详解
1) 从备份服务器上将数据拉取到本地,用于数据恢复
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]
总结:从备份服务器上将数据拉取到本地,用于数据恢复
2)从存储服务器上将数据推送到远程服务器上,用数据备份
Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
rsync ---数据备份命令
OPTION...] ---命令参数信息
SRC... ---指定将本地服务器上数据进行备份
[USER@] ---指定进行传输数据认证用户信息
HOST:: --- 指定备份服务器的ip地址或主机名称信息
DEST ---指定备份服务器上模块名称
rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST
总结:从存储服务器上将数据推送到远程服务器上,用数据备份
参照服务器:在什么服务器执行操作命令,对应的服务器就是参照服务器
推:在参照服务器上执行命令,将本地数据怼到远程主机上
拉:在参照服务器上执行命令,将远程数据怼到本地主机上
以上是关于详解linux中rsync的妙用的主要内容,如果未能解决你的问题,请参考以下文章