rsync数据备份解决方案

  rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。

一、项目规则:

1、系统环境

[[email protected] ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[[email protected] ~]# uname -r
3.10.0-327.el7.x86_64

2、更改主机名和/etc/hosts文件 (客户端和服务端同时操作)

[[email protected] etc]# tail -2 /etc/hosts
192.168.30.137 zabbix-server
192.168.30.136 zabbix-client

二、安装rsync软件

1、 安装rsync软件(客户端和服务端同时操作)

[[email protected] ~]# yum install rsync -y
[[email protected] ~]#  rpm -qa rsync
rsync-3.0.9-17.el7.x86_64

2、编辑rsyncd.conf配置文件

[[email protected] ~]# vi /etc/rsyncd.conf
#Rsync server
#created by nulige 2017-7-8
##rsyncd.conf start##
uid = rsync
gid = rsync
use chroot = no
max connections = 2000
timeout = 600
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors
read only = false
list = false
hosts allow = 192.168.30.1/24
hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password
##################################################
[backup]
comment = backup server by nulige at 207-7-8
path = /backup

3、添加用户并授权、更改所属组】

[[email protected] etc]# useradd rsync -s /sbin/nologin -M
[[email protected]-server etc]# id rsync
uid=1000(rsync) gid=1000(rsync) groups=1000(rsync)
[[email protected]-server etc]# mkdir /backup
[[email protected]-server etc]# chown -R rsync /backup
[[email protected]-server etc]#  ls -ld /backup
drwxr-xr-x 2 rsync root 6 Jun 24 10:18 /backup

4、创建密码文件

[[email protected] etc]#  echo "rsync_backup:nulige" >/etc/rsync.password
[[email protected] etc]# chmod 600 /etc/rsync.password
[[email protected] etc]#  cat /etc/rsync.password
rsync_backup:nulige

5、添加rsync启动脚本

[[email protected] ~]# vi /etc/init.d/rsync
#!/bin/bash
#author:nulige
#this script for start|stop rsync daemon service
#date:2017/7/8

status1=$(ps -ef | egrep "rsync --daemon.*rsyncd.conf" | grep -v ‘grep‘)
pidfile="/var/run/rsyncd.pid"
start_rsync="rsync --daemon --config=/etc/rsyncd.conf" 

function rsyncstart() { 

    if [ "${status1}X" == "X" ];then 

        rm -f $pidfile       

        ${start_rsync}   

        status2=$(ps -ef | egrep "rsync --daemon.*rsyncd.conf" | grep -v ‘grep‘) 

        if [  "${status2}X" != "X"  ];then 

            echo "rsync service start.......OK" 

        fi 

    else 

        echo "rsync service is running !"    

    fi
} 

function rsyncstop() { 

    if [ "${status1}X" != "X" ];then 

        kill -9 $(cat $pidfile) 

        status2=$(ps -ef | egrep "rsync --daemon.*rsyncd.conf" | grep -v ‘grep‘) 

        if [ "${statusw2}X" == "X" ];then 

            echo "rsync service stop.......OK"
        fi
    else 

        echo "rsync service is not running !"    

    fi
} 

function rsyncstatus() { 

    if [ "${status1}X" != "X" ];then 

        echo "rsync service is running !"   

    else 

         echo "rsync service is not running !"  

    fi 

} 

function rsyncrestart() { 

    if [ "${status1}X" == "X" ];then 

               echo "rsync service is not running..." 

               rsyncstart
        else 

               rsyncstop 

               rsyncstart    

        fi
}  

case $1 in 

        "start")
               rsyncstart
                ;; 

        "stop")
               rsyncstop
                ;; 

        "status")
               rsyncstatus
               ;; 

        "restart")
               rsyncrestart
               ;; 

        *)
          echo
                echo  "Usage: $0 start|stop|restart|status"
          echo
esac

6、给脚本添加执行权限

[[email protected] ~]# chmod a+x /etc/init.d/rsync

7、启动rsync服务

#启动
[[email protected] ~]# service rsync start

#重启
[[email protected] ~]# service rsync restart
rsync service is not running...

#查看状态
[[email protected] ~]# service rsync status
rsync service is not running ! 

#启动rsync服务(没有用启动脚本的情况,系统默认的启动方法)

[[email protected] etc]# rsync --daemon

8、查看启动端口

[[email protected] etc]# netstat -lntup|grep rsync
tcp        0      0 0.0.0.0:873             0.0.0.0:*               LISTEN      49936/rsync
tcp6       0      0 :::873                  :::*                    LISTEN      49936/rsync  

9、加入开机自启动

 [[email protected] ~]#echo "#rsync boot start by nulige at 2017-7-8" >>/etc/rc.local

[[email protected] ~]#echo "rsync --daemon" >>/etc/rc.local

[[email protected] ~]# tail /etc/rc.local
#rsync boot start by nulige at 2017-7-8
rsync --daemon

三、安装客户端

时间: 2024-08-05 23:20:15

rsync数据备份解决方案的相关文章

开源服务专题之-------rsync数据备份

RSYNC是Remote Sync 远程同步的简称,与SCP的比较,SCP= 无法备份大量数据,类似windows的复制,而rsync=边复制 ,边统计,边比较,可以备份大量数据.可以镜像保存整个目录树和文件系统.可以很容易做到保持原来文件的权限.时间.软硬链接等等.无须特殊权限即可安装.快速:第一次同步时 rsync 会复制全部内容,但在下一次只传输修改过的文件.压缩传输:rsync 在传输数据的过程中可以实行压缩及解压缩操作,因此可以使用更少的带宽.安全:可以使用scp.ssh等方式来传输文

rsync数据备份方案

最近整理了下公司的数据备份情况.以下是部分操作的过程 1.rsync数据备份,具体备份过程就不详细介绍.数据都备份在/bakup目录下 2.删除过期数据及空目录 公司的备份数据量比较大,必须及时清除过期数据. echo "日期:$(date +%Y-%m-%d):以下是以过期31天的文件:" > /var/log/delete.log find /bakup -mtime +31 -name "*" >> /var/log/delete.log f

中小企业数据备份解决方案

 企业发展速度就如雨后春笋般,节节高升.与此同时,数据也是呈直线式的增长.那么如何掌控好这些数据呢?谁能保证不受硬件故障.人为操作错误.软件缺陷.电脑病毒等诸多因素影响呢?所以,在发展的同时应该好好保护数据. 一.中小企业信息系统现状: 1.中小企业的应用环境一般为有一定数量的基于Windows桌面系统/linux系统的个人计算机.数台基于WINDOWS NT/2000或linux操作系统的文件服务器.WEB服务器.数据库服务器和邮件服务器.打印服务器.域管理服务器等功能服务器.企业内已建成10

教你如何选择数据备份解决方案

随着数据的大量增长,传统的备份已经走入了困局,甚至成为了阻碍用户业务持续发展的不稳定因素.当前的备份市场也在发生着变化,备份厂商们都在努力改变以让用户适用这种趋势变化,尤其是在大数据时代下,能够满足现在需求以及适应未来发展的备份解决方案无疑是用户的首先.在当前备份市场中,不同类型的产品和解决方案纷繁复杂.琳琅满目,多备份认为选择备份解决方案主要需要考虑以下因素: 首先,备份的方案需要是可扩展的.因为数据量总是在不断的增长,因此备份的容量就需要长远的考虑,可扩展的备份解决方案能够轻松满足用户当前和

rsync 数据备份+cron+mailx案例

大家都知道数据非常重要的,需要经常备份,如果备份了,但无法恢复还原,那就证明你备份的很失败,所有当我们备份了数据需要检查是否备份完整,是否可用可恢复.以下为一个企业案例: 某公司里有一台Web服务器,里面的数据很重要,但是如果硬盘坏了,数据就会丢失,现在领导要求你把数据在其他机器上做一个周期性定时备份.要求如下: 每天晚上00点整在web服务器上打包备份系统配置文件.网站主程序及访问日志,并通过rsync命令推送到服务器上备份保留(备份思路可以是在本地按日期打包,然后再推送到备份服务器上) 具体

rsync数据备份

一 基本概念 1.1 rsync介绍 rsync,remote synchronize,是一款实现远程同步功能的软件,在同步文件的同时,可以保持原来文件的权限,时间,软硬链接等附加信息.Rsync是使用rsync算法提供一个客户机和远程文件服务器的文件同步的快速算法,而且可以同步ssh的方式来传输 rsync特点 可以镜像保存整个目录和文件系统 可以很容易做到保持原来文件的权限,时间,软硬链接等 无须特殊权限即可安装 快速:第一次同步时,rsync会复制全部的内容,但在下一次指挥复制修改过的文件

全网数据备份解决方案

1.首先在备份服务器上部署rsync服务 2.实现本地文件打包,通过脚本实现 3.设置定时任务,定时推送打包文件 4.进行整体测试 原文地址:https://www.cnblogs.com/zrxuexi/p/11587384.html

老男孩教育运维班50-100台规模集群全网数据备份项目实战

老男孩教育运维班50-100台规模集群全网数据备份解决方案 项目要求: 1.全体学员上机实践考试,完成后由排长或班长或助教打分. 2.时间:60分钟,抄袭别人0分. 3.本项目提供免费实战讲解视频: http://edu.51cto.com/course/course_id-3497.html 1.基本备份要求 已知3台服务器主机名分别为web01.backup.nfs01,主机信息见下表: 服务器说明 外网IP 内网IP 主机名称 nginx web服务器 10.0.0.8/24 172.16

rsync远程数据备份配置之再次总结

一.实验环境 主机名  网卡ip  默认网关 用途 nfs-server 10.0.0.11 10.0.0.254 rsync服务器端 web-client01 10.0.0.12 10.0.0.254 rsync客服端 web-client02 10.0.0.13 10.0.0.254 rsync客服端 二.实验步骤 1.什么是rsync?rsync是一款开源的,快速的,多功能的可实现全量及增量的数据备份同步的优秀工具,适用于多种操作系统之上.2.rsync特性1)支持拷贝链接文件特殊文件2)