rsync数据备份(三)--非系统用户备份数据--RHEL6.5

2024-05-15 17:08

本文主要是介绍rsync数据备份(三)--非系统用户备份数据--RHEL6.5,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  配置系统文件/etc/rsyncd.conf备份数据,创建备份账户,最后rsync以守护进程的方式运行。

  服务器:192.168.80.137

  客户端:192.168.80.138

1.  配置文件rsyncd.conf

    1)配置项简介

     port                      #→指定后台程序使用的端口号,默认为 873。
    uid                        #→该选项指定当该模块传输文件时守护进程应该具有的 uid,配合 gid 选项使用可以确定哪些可以访问怎么样的文件权限,默认值是" nobody"。
    gid                       #→该选项指定当该模块传输文件时守护进程应该具有的 gid。默认值为" nobody"。
    max connections   #→指定该模块的最大并发连接数量以保护服务器,超过限制的连接请求将被告知随后再试。默认值是 0,也就是没有限制。
    lock file                #→指定支持 max connections 参数的锁文件,默认值是/var/run/rsyncd.lock。
    motd file               #→" motd file"参数用来指定一个消息文件,当客户连接服务器时该文件的内容显示给客户,默认是没有 motd 文件的。
    log file                 #→" log file"指定 rsync 的日志文件,而不将日志发送给 syslog。
    pid file                  #→指定 rsync 的 pid 文件,通常指定为“/var/run/rsyncd.pid” ,存放进程 ID 的文件位置。
    hosts allow=         #→单个 IP 地址或网络地址 //允许访问的客户机地址常见的模块参数:主要是定义服务器哪个要被同步输出,其格式必须为“[ 共享模块名 ]” 形式,

                                   这个名字就是在rsync 客户端看到的名字,其实很像 Samba 服务器提供的共享名。而服务器真正同步的数据是通过 path 来指定的。
    Comment              #→给模块指定一个描述,该描述连同模块名在客户连接得到模块列表时显示给客户。默认没有描述定义。
    Path                     #→指定该模块的供备份的目录树路径,该参数是必须指定的。
    readonly               #→yes 为只允许下载,no 为可以下载和上传文件到服务器
    exclude                #→用来指定多个由空格隔开的多个文件或目录(相对路径),将其添加到 exclude 列表中。这等同于在客户端命令中使用―exclude 或----filter 来指定某些文件或

                                   目录不下载或上传(既不可访问)
    exclude from        #→指定一个包含 exclude 模式的定义的文件名,服务器从该文件中读取 exclude 列表定义,每个文件或目录需要占用一行
    include                #→用来指定不排除符合要求的文件或目录。这等同于在客户端命令中使用--include 来指定模式,结合include 和 exclude 可以定义复杂的

                                 exclude/include 规则。
    include from         #→指定一个包含 include 模式的定义的文件名,服务器从该文件中读取 include 列表定义。
    auth users            #→该选项指定由空格或逗号分隔的用户名列表,只有这些用户才允许连接该模块。这里的用户和系统用户没有任何关系。如果" auth users"被设置,

                                  那么客户端发出对该模块的连接请求以后会被 rsync 请求 challenged 进行验证身份这里使用的 challenge/response 认证协议。

                                 用户的名和密码以明文方式存放在" secrets file"选项指定的文件中。默认情况下无需密码就可以连接模块(也就是匿名方式)。
    secrets file          #→该选项指定一个包含定义用户名:密码对的文件。只有在" auth users"被定义时,该文件才有作用。文件每 行包含一个 username:passwd 对。

                                  一般来说密码最好不要超过 8 个字符。没有默认的 secures file 名,注意:该文件的权限一定要是 600,否则客户端将不能连接服务器。
     hosts allow         #→指定哪些 IP 的客户允许连接该模块。定义可以是以下形式:
                                单个 IP 地址,例如:192.167.0.1,多个 IP 或网段需要用空格隔开,整个网段,例如:192.168.0.0/24,也可以是192.168.0.0/255.255.

                                *” 则表示所有,默认是允许所有主机连接。
     hosts deny         #→指定不允许连接 rsync 服务器的机器,可以使用 hosts allow 的定义方式来进行定义。默认是没有 hostsdeny 定义。
     list                    #→该选项设定当客户请求可以使用的模块列表时,该模块是否应该被列出。如果设置该选项为 false,可以创建隐藏的模块。默认值是 true。
     timeout             #→通过该选项可以覆盖客户指定的 IP 超时时间。通过该选项可以确保 rsync 服务器不会永远等待一个崩溃的客户端。超时单位为秒钟,0 表示没有超时定义

                                ,这也是默认值。对于匿名 rsync 服务器来说,一个理想的数字是 600。   

    2) rsyncd.conf配置

      uid = nobody  #运行进程的身份
      gid=nobody#运行进程的组
      address=192.168.80.137#监听 IP
      port=873#监听端口
      hosts allow=192.168.80.138#允许同步客户端的 IP 地址,可以是网段,或者用*表示所有 192.168.80.0/24或 192.168.80.0/255.255.255.0
      use chroot=yes#是否囚牢,锁定家目录,rsync 被黑之后,黑客无法再 rsync 运行的家目录之外创建文件,选项设置为 yes
      max connections=5#最大连接数
      pid file= /var/run/rsyncd.pid#进程 PID,自动生成
      lock file= /var/run/rsync.lock#指 max connectios 参数的锁文件
      log file= /var/log/rsyncd.log#日志文件位置
      motd file= /etc/rsyncd.motd#客户端登陆之后弹出的消息,需要创建
      [wwwroot]#共享模块名称
      path= /var/www/html#路径
      comment=used for web-data root #描述
      readonly=yes #只读方式(只可以下载)
      list=yes#是否允许查看模块信息
      auth users=rsyncuser#备份的用户,和系统用户无关
2. 配置提示文件和用户密码文件

    1)提示文件

        echo“welcome to Backup server” > /etc/rsyncd.motd

    2) 密码文件

        echo "rsyncuser:password123" >> /etc/rsync.passwd

        chmod 600 etc/rsync.passwd

3. 验证 

   1) 重启服务

     service xinetd restart 或者 rsync --daemon --config=/eetc/rsyncd.conf

     netstat -anupt | grep 873

     chkconfig xinetd on

  2) 客户端执行备份

    rsync -azP --delete rsyncuser@192.168.80.137::wwwroot /web-back/

4. 计划任务实现自动备份

    vim autobackup.sh

      export RSYNC_PASSWORD=password123

      rsync -avz rsyncuser@192.168.80.137::wwwroot /web-back

  chmod u+x autobackup.sh

  echo "0 3 * * * sh autobackup.sh &" >> /var/spool/cron/root

  


    

     

     

 


 

这篇关于rsync数据备份(三)--非系统用户备份数据--RHEL6.5的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/992417

相关文章

MySQL中查询和展示LONGBLOB类型数据的技巧总结

《MySQL中查询和展示LONGBLOB类型数据的技巧总结》在MySQL中LONGBLOB是一种二进制大对象(BLOB)数据类型,用于存储大量的二进制数据,:本文主要介绍MySQL中查询和展示LO... 目录前言1. 查询 LONGBLOB 数据的大小2. 查询并展示 LONGBLOB 数据2.1 转换为十

使用SpringBoot+InfluxDB实现高效数据存储与查询

《使用SpringBoot+InfluxDB实现高效数据存储与查询》InfluxDB是一个开源的时间序列数据库,特别适合处理带有时间戳的监控数据、指标数据等,下面详细介绍如何在SpringBoot项目... 目录1、项目介绍2、 InfluxDB 介绍3、Spring Boot 配置 InfluxDB4、I

Java整合Protocol Buffers实现高效数据序列化实践

《Java整合ProtocolBuffers实现高效数据序列化实践》ProtocolBuffers是Google开发的一种语言中立、平台中立、可扩展的结构化数据序列化机制,类似于XML但更小、更快... 目录一、Protocol Buffers简介1.1 什么是Protocol Buffers1.2 Pro

Linux查询服务器系统版本号的多种方法

《Linux查询服务器系统版本号的多种方法》在Linux系统管理和维护工作中,了解当前操作系统的版本信息是最基础也是最重要的操作之一,系统版本不仅关系到软件兼容性、安全更新策略,还直接影响到故障排查和... 目录一、引言:系统版本查询的重要性二、基础命令解析:cat /etc/Centos-release详

Python实现数据可视化图表生成(适合新手入门)

《Python实现数据可视化图表生成(适合新手入门)》在数据科学和数据分析的新时代,高效、直观的数据可视化工具显得尤为重要,下面:本文主要介绍Python实现数据可视化图表生成的相关资料,文中通过... 目录前言为什么需要数据可视化准备工作基本图表绘制折线图柱状图散点图使用Seaborn创建高级图表箱线图热

MySQL数据脱敏的实现方法

《MySQL数据脱敏的实现方法》本文主要介绍了MySQL数据脱敏的实现方法,包括字符替换、加密等方法,通过工具类和数据库服务整合,确保敏感信息在查询结果中被掩码处理,感兴趣的可以了解一下... 目录一. 数据脱敏的方法二. 字符替换脱敏1. 创建数据脱敏工具类三. 整合到数据库操作1. 创建服务类进行数据库

MySQL容灾备份的实现方案

《MySQL容灾备份的实现方案》进行MySQL的容灾备份是确保数据安全和业务连续性的关键步骤,容灾备份可以分为本地备份和远程备份,主要包括逻辑备份和物理备份两种方式,下面就来具体介绍一下... 目录一、逻辑备份1. 使用mysqldump进行逻辑备份1.1 全库备份1.2 单库备份1.3 单表备份2. 恢复

MySQL中处理数据的并发一致性的实现示例

《MySQL中处理数据的并发一致性的实现示例》在MySQL中处理数据的并发一致性是确保多个用户或应用程序同时访问和修改数据库时,不会导致数据冲突、数据丢失或数据不一致,MySQL通过事务和锁机制来管理... 目录一、事务(Transactions)1. 事务控制语句二、锁(Locks)1. 锁类型2. 锁粒

更改linux系统的默认Python版本方式

《更改linux系统的默认Python版本方式》通过删除原Python软链接并创建指向python3.6的新链接,可切换系统默认Python版本,需注意版本冲突、环境混乱及维护问题,建议使用pyenv... 目录更改系统的默认python版本软链接软链接的特点创建软链接的命令使用场景注意事项总结更改系统的默

Qt中实现多线程导出数据功能的四种方式小结

《Qt中实现多线程导出数据功能的四种方式小结》在以往的项目开发中,在很多地方用到了多线程,本文将记录下在Qt开发中用到的多线程技术实现方法,以导出指定范围的数字到txt文件为例,展示多线程不同的实现方... 目录前言导出文件的示例工具类QThreadQObject的moveToThread方法实现多线程QC