在我们的生产系统中存在很多服务器和数据库,平时的日常备份显得尤其重要。但往往是没有遇到过灾难备份最容易被忽略,但是灾难真的发生的时候,备份是最直接最有用的解决方法,虽然难免有部分数据的损失。

rsync是一款配置简单,功能全面的安全备份软件,具体的功能介绍可以参考手册。这里和大家分享一下rsync在CentOS下的部署。

1、安装rsync,并通过xinetd管理rsync

yum install rsync xinetd -y

2、修改/etc/xinetd.d/rsync文件,使其随xinetd启动而启动

vim /etc/xinetd.d/rsync

......将disable = yes 修改为 disable = no

disable = no

3、修改防火墙策略,允许873端口(tcp/udp)

#直接修改/etc/sysconfig/iptables ,需要重启防火墙

-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT

-A RH-Firewall-1-INPUT -p udp -m state --state NEW -m udp --dport 873 -j ACCEPT

/etc/init.d/iptables restart

#或者使用iptables命令

iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT

iptables -A INPUT -p udp -m state --state NEW -m udp --dport 873 -j ACCEPT

4、建立rsync的配置文件

# vim /etc/rsyncd.conf                  没有这个文件的话直接建立

......

secrets file = /etc/rsyncd.secrets   指定允许的用户和用户密码

motd file = /etc/rsyncd.motd         客户端连接上来时显示的欢迎信息的存放文件www.linuxidc.com

read only = no                             是否只读

list = yes                                      是否允许客户端能够列出备份服务器上的文件

uid = root                                    指定uid

gid = wheel                                  指定gid

hosts allow = 192.168.1.100 192.168.1.200  允许使用备份服务器的客户端列表,根据实际环境列出

max connections = 100                同时的最大连接数

log file = /var/log/rsyncd.log         日志文件位置

pid file = /var/run/rsyncd.pid         进程的pid存放文件位置

lock file = /var/run/rsync.lock      lock文件位置

####上面的配置是全局的,下面的段会继承上面设定的属性####

[mongobak]                                 建立一个备份名,客户端通过该名称指定具体的备份位置

path = /mongobak                       指定备份文件存放的目录位置

auth users = test                          允许那些用户,这里的用户test的信息存放在/etc/rsyncd.secrets

这样一个简单实用的配置就好了。

5、建立/etc/rsyncd.secrets文件

#vim /etc/rsyncd.secrets

......

test:rsync-7-elevEn    格式   用户名:密码  该用户不要求是系统用户

rsyncd.secrets文件的权限要设定为600

.....

#chmod 600 /etc/rsyncd.secrets

6、建立连接到服务器的客户端看到的欢迎信息文件/etc/rsyncd.motd

#vim /etc/rsyncd.motd

......

Welcome to Window Server 2003 IIS

......

#这里的信息根据实际填写

7、启动rsync

#启动

/etc/init.d/xinetd restart

#查看873端口是否起来

netstat -an | grep 873

如果rsync启动成功的话可以看到873端口已经在监听了。