设为首页 收藏本站
查看: 1240|回复: 0

[新闻资讯] CentOS 7使用rsync实现数据备份

[复制链接]
累计签到:224 天
连续签到:4 天
发表于 2019-8-1 20:48:05 | 显示全部楼层 |阅读模式
一、rsync是什么在开始正式学习 rsync 之前,我们先来回答这个问题:rsync 是什么。
rsync(remote synchronize)是 Liunx/Unix 下的一个远程数据同步工具。它可通过 LAN/WAN 快速同步多台主机间的文件和目录,并适当利用 rsync 算法(差分编码)以减少数据的传输。rsync 算法并不是每一次都整份传输,而是只传输两个文件的不同部分,因此其传输速度相当快。除此之外,rsync 可拷贝、显示目录属性,以及拷贝文件,并可选择性的压缩以及递归拷贝。

二、rsync优点rsync有以下几个优点:
  • 可以镜像保存整个目录树和文件系统。
  • 可以很容易做到保持原来文件的权限、时间、软硬连接等。
  • 无需特殊权限即可安装。
  • 拥有优化的流程和比较高的文件传输效率。
  • 可以使用shell(rsh、ssh)方式来传输文件。
  • 支持匿名运行。
与 scp 相比,rsync 传输速度绝对远远超过 scp 的传输速度。
我们在局域网中经常用 rsync 和 scp 传输大量 mysql 数据库文件,发现 rsync 传输文件速度至少要比 scp 快 20 倍以上。
所以如果需要在 Liunx/Unix 服务器之间互传海量数据时,建议选择 rsync 进行传输。

三、运行模式(服务器)rsync 有两种常用的认证方式,一种是 rsync-daemon 方式,另外一种是 ssh 方式(类似于 scp)。在平时使用过程,我们使用最多的是 rsync-daemon 方式。
这种模式是基于 C/S 模式的,在这种模式下,rsync 在后台启用了一个守护进程,这个守护进程在 rsync 服务器永久运行,用于接收请求传输文件,因此,客户端既可以把文件推送( push )给守护进程,也可以向守护进程拉取( pull )文件。rsync 的服务器模式非常适合为异地的中心备份服务器或数据异地存储库来使用。
案例介绍:
我们使用 pull 模式,我们有多个应用的服务器作为服务端,备份服务器作为客户端,备份服务器向每个应用服务器拉取需要备份的数据,放到相应的目录下面。

四、安装配置 rsync1、安装 rsync为了简便,我们这里直接使用 yum 进行安装即可。
yum install rsync -y

2、配置 rsync 服务端(应用服务器)我们有一台云盘的服务器,IP为 10.0.2.15,我们在这台服务器上面进行服务端的配置,我们需要备份的路径为 /data/nextcloud,首先进行配置文件的设定,配置的详细解释在文中最后有介绍,我们设置的如下:
# cat /etc/rsyncd.confuid = rootgid = rootuse chroot = yesmax connections = 10pid file = /var/run/rsyncd.pidlog file = /var/log/rsync.logtransfer logging = yestimeout = 900ignore nonreadable = yesdont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2[nextcloud]path = /data/nextcloudcomment = pan.wzlinux.comread only = yeswrite only = nohosts allow = 10.0.2.30list = noignore errorsauth users = backupsecrets file = /etc/rsyncd.pass  增加密码认证文件:
# cat /etc/rsyncd.passbackup:123456     #具有拉取数据的账号密码chmod 600 /etc/rsyncd.pass启动服务器:
systemctl start rsyncd.service



3、配置 rsync 客户端(备份服务器)配置密码认证文件,这里只需配置密码即可,账号我们会在命令里面指定:
# cat /etc/rsyncd.pass123456# chmod 600 /etc/rsyncd.pass4、进行数据拉取测试我们在备份服务器上面同样安装 rsync,然后进行如下指令进行数据拉取:     
rsync -vzrtopg --delete --progress --password-file=/etc/rsyncd.pass backup@10.0.2.15::nextcloud /data/10.0.2.15/nextcloud


5、客户端添加定时任务# crontab -l# 10.0.2.15 backup00 01 * * * root /usr/bin/rsync -vzrtopg --delete --progress --password-file=/etc/rsyncd.pass backup@10.0.2.15::nextcloud /data/10.0.2.15/nextcloud

6、CentOS 6启动方法CentOS 6 服务模式的启动方法可以参照命令rsync --daemon --help查进行查看,我们使用如下:
rsync --daemon --config=/etc/rsyncd.conf &









运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-974197-1-1.html 上篇帖子: 我把Linux系统上面误删的数据找回来了 下篇帖子: Linux使用mutt发送邮件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表