当前位置: 首页 > news >正文

配置rsync源服务器

需求:正确,有效的备份方案是保障系统及数据安全的重要手段。服务器中,通常会结合计划任务,shell脚本来执行本地备份,为了进一步提高备份的可靠性,使用异地备份也是很必要的。

rsync的同步示意图:

wKiom1iyhY-RfezWAAEOzI6YSVI715.jpg-wh_50

rsync是一个开源的快速备份工具,能在不同的主机之间镜像同步整个目录树,支持增量备份,保持链接,权限。且采用优先的同步算法,传输前执行压缩,因此非常适合异地备份,镜像服务器等应用。

        作为一种常用的文件备份工具,rsync往往是linux和unix系统默认安装的基本组件之一。

    远程同步任务重,负责发起rsync同步操作的客户机称为发起端,负责响应来自客户机的rsync同步操作的服务器称为同步端。同步过程中,同步源负责提供文档的原始位置,发起端应对该位置具有读取权限。

        rsync作为同步源时以守护进程运行,为其他客户机提供备份源。配置rsync同步源需要建立配置文件rsyncdd.conf,创建备份账号,然后将rsync程序以“--daemon”选项运行。

            建立/etc/rsyncd.conf配置文件

                    rsyncd.conf位于/etc下,默认是没有的。比如讲以源目录/var/www/html.备份账号backuper为例。

                vim /etc/rsyncd.conf

                uid = nobody

                pid = nobody

                use chroot = yes

                address = 10.0.0.1

                port 873

                log file = /var/log/rsyncd.log

                pid file = /var/run/rsyncd.pid

                hosts allow = 10.0.0.0/8

                [wwwroot]

                    path = /var/www/html

                    comment = Document Root of www.baidu.com

                    read only = yes

                    dont compress = *.gz *.bz2 *.zip *.rar *.z

                    auth users = backuper

                    secrets file = /etc/rsyncd_users.db

            但是基于安全性考虑,rsync的同步源最好仅允许以只读方式做同步,同步可以采用匿名的方式,将其中的auth users 和secrets file配置记录去掉就可以

            为备份账户创建数据文件

                    创建账号数据文件,添加一行用户记录,以冒号分隔,用户名称为backuper,密码为123456.由于账号信息采用明文存放,应调整文件权限,避免账号信息泄露。

                    vim /etc/rsyncd_users.db

                    backuper:pwd123

                    chmod 600 /etc/rsyncd_users.db

                    备份用户backuper需要对源目录/var/www/html有相应的读取权限,实际只要other组有读取权限,则备份用户backuper和运行用户nobody也就有读取权限。

                    启动rsync服务程序,运行参数为--daemon

                            rysnc --deamon命令就可以启动rsync服务,以独立监听服务的方式运行。若要关闭rsync服务,可以采取kill进程的方式。kill $(cat /var/run/rsyncd.pid)

本文转自   宏强   51CTO博客,原文链接:http://blog.51cto.com/tanhong/1901381

相关文章:

  • js获取区域坐标
  • 海洋祝福电子贺卡
  • 虚拟局域网(VLAN)和以太网通道
  • WAS 常用命令
  • SQL Server In-Memory OLTP Internals for SQL Server 2016
  • 酣畅淋漓.....
  • Eclipse 调优及使用小细节
  • Linux周期性任务计划
  • 我在Dell笔记本上安装Windows 7全过程
  • 设计模式.迪米特法则
  • 【图像处理】基于OpenCV底层实现的直方图匹配
  • javascript判断IPV6格式
  • 【sql】部门最高工资 Department Highest Salary
  • 用shell批量修改类似的文件名
  • 【★】交换层网关协议大总结!
  • [rust! #004] [译] Rust 的内置 Traits, 使用场景, 方式, 和原因
  • “大数据应用场景”之隔壁老王(连载四)
  • 03Go 类型总结
  • CNN 在图像分割中的简史:从 R-CNN 到 Mask R-CNN
  • java8-模拟hadoop
  • Less 日常用法
  • node入门
  • Otto开发初探——微服务依赖管理新利器
  • rc-form之最单纯情况
  • Spring-boot 启动时碰到的错误
  • Tornado学习笔记(1)
  • Vim 折腾记
  • 给第三方使用接口的 URL 签名实现
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • 计算机在识别图像时“看到”了什么?
  • 经典排序算法及其 Java 实现
  • 微信公众号开发小记——5.python微信红包
  • 智能合约开发环境搭建及Hello World合约
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • #14vue3生成表单并跳转到外部地址的方式
  • $.ajax()
  • ( 10 )MySQL中的外键
  • (2)Java 简介
  • (3)选择元素——(14)接触DOM元素(Accessing DOM elements)
  • (C语言)球球大作战
  • (html转换)StringEscapeUtils类的转义与反转义方法
  • (solr系列:一)使用tomcat部署solr服务
  • (二)Eureka服务搭建,服务注册,服务发现
  • (二开)Flink 修改源码拓展 SQL 语法
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • (原創) 未来三学期想要修的课 (日記)
  • ./include/caffe/util/cudnn.hpp: In function ‘const char* cudnnGetErrorString(cudnnStatus_t)’: ./incl
  • .Net 8.0 新的变化
  • .NET Core 通过 Ef Core 操作 Mysql
  • .NET MVC、 WebAPI、 WebService【ws】、NVVM、WCF、Remoting
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .NET 设计一套高性能的弱事件机制
  • .NET6实现破解Modbus poll点表配置文件
  • .NET导入Excel数据
  • .so文件(linux系统)