Chinaunix首页 | 论坛 | 博客
  • 博客访问: 267177
  • 博文数量: 107
  • 博客积分: 305
  • 博客等级: 二等列兵
  • 技术积分: 417
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-22 09:42
文章分类

全部博文(107)

文章存档

2014年(3)

2013年(41)

2012年(34)

2011年(28)

2008年(1)

分类: LINUX

2013-08-19 10:19:19

原文地址:用rsync搭建数据备份服务 作者:yueming

一、环境

备份文件的服务器(服务器端):192.168.1.88 Centos 5

需要发送备份文件的服务器(客户端):192.168.1.125 CENTOS 5

建议客户端和服务器端都用rsync最新版本,如果两者版本不同,很容易造成验证失败。

目前我们用最新版本:rsync-3.0.9.tar.gz。 建议客户端和服务器端都安装这一版本

安装过程如下:

tar -zxvf rsync-3.0.9.tar.gz

cd rsync-3.0.9

./configure

make && make install

二、安装配置

1.服务器端的配置

A、采用系统默认安装的rsync 编辑/etc/rsyncd.conf文件,如果没有则新建一个。

vi /etc/rsyncd.conf

strict modes= yes #check passwd file

port= 873 #default port

logfile= /var/log/rsyncd.log

pidfile= /var/run/rsyncd.pid

max connections= 0

#[modules]

[S1] #备份模块 备份S1服的数据

uid= root

gid= root

path= /opt/data_S1  # 设置备份目录

read only= false

host allow= 192.168.1.125  #本模块目录只允许Ip远程访问

auth users= root

secrets file= /etc/rsyncd.pas

 

#比如S2服务器我们可以用一下方式配置。类似于 S1

[S2]

uid= root

gid= root

path= /opt/data_S2 # 设置备份目录

read only= no

host allow= 192.168.1.XXX本模块目录只允许Ip远程访问

auth users= root

secrets file= /etc/rsyncd.pas

     B、 添加一个密码文件

         vi /etc/rsyncd.pas

         添加内容如下:

         root:6307161

     C、改变权限为600

        chmod 600 /etc/rsyncd.pas

D、启动服务(如开有防火墙请允许873端口通过)

rsync --daemon --config=/etc/rsyncd.conf &


2.客户端配置

A、添加密码文件
vi /etc/rsyncd.pas   (没有就新建)

内容如下:

6307161  #注意,这个地方与服务端不同,只填写密码,不填写账户,否则操作过程密码验证要报错

B、改文件权限为600

chmod  600 /etc/rsyncd.pas

三、备份操作

1、  先用手动输入看备份是否Ok

rsync -avz --password-file=/etc/rsyncd.pas --progress /opt/data/dump.rdb 将本地目录/opt/data/dump.rdb文件同步到远程服务器192.168.1.88的模块所对应的目录下

(见配置:path= /opt/data_S1  # 设置备份目录

2我们用脚本来自动执行备份
列:rsync -avz --password-file=密码文件路径   本地需要备份文件的路径 username@需要备份的主机IP::备份里的模块名称

在/root建一个脚本文件, vi backup, 内容如下一样:

#!/bin/sh

rsync -avz --password-file=/etc/rsyncd.pas  --progress  /opt/data/dump.rdb 

保存,添加权限:chmod u+x backup

3、写入服务器计划任务

crontab –e  输入一下内容:

1 * * * *  /root/backup

保存。

重新启动crond进程


cd /etc/init.d

./crond restart


就这么简单,完了。


阅读(990) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~