--转载时请保留下面,以供大家加我MSN,增强交流,共同学习.
--姜庭华 msn: jaimejth@live.cn
--博客:http://blog.youkuaiyun.com/jaimejth
rsync增量备份
服务器和客户端都需要配置,客户端向服务器拉数据。rsync启动的端口是873
rsync服务器的IP:192.168.0.1
rsync客户端的IP:192.168.0.60
服务器和客户端配置防火墙
linux防火墙是用iptables,所以我们要打开rsync使用的端口873
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT
服务器配置:
一.查看服务器是否安装rsync
@rpm -q rsync
二.配置rsync的配置文件.(/etc/rsyncd.conf)
[root@db]# vi /etc/rsyncd.conf
pid file = /var/run/rsyncd.pid
port = 873
uid =root
gid =root
use chroot = no
read only = yes
hosts allow=192.168.0.60 //客户端的IP地址写在这里
hosts deny=*
max connections = 2
motd file = /etc/rsyncd.motd
log file = /var/log/rsyncd.log
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
[www] --自己取名www
path = /usr/local/mysql-max-4.1.8-pc-linux-i686/data //需要备份的路径
list=false
ignore errors
auth users = rsync_user
secrets file = /etc/rsyncd.secrets //保存用户名和密码。格式如下:用户名:密码
comment = rsync_user www
三.启动服务
#/usr/bin/rsync --daemon (服务器端将rsync以守护进程启动)
四.加入开机启动
echo "/usr/bin/rsync --daemon">>/etc/rc.local
五.检查rsync是否启动
#ps -ef|grep rsync
六.停止服务
#kill 'cat /var/run/rsyncd.pid'
客户端配置:
一.查看客户端是否安装rsync
@rpm -q rsync
二.手动执行命令从服务器拉数据同步
#rsync -ave ssh root@192.168.0.1:/home/ /bak //把192.168.0.1上的/home/目录下的文件同步备份到本机的/bak目录下
或者以下命令:
#rsync -avzP --delete --password-file=/etc/rsyncd.secrets root@192.168.0.1::www /bak //把192.168.0.1上的www配置的目录下的文件同步备份到本机
的/bak目录下
该文件保存root用户的密码:/etc/rsyncd.secrets 此文件里面只有一个密码字符串。
客户端设置自动同步备份
一.在/bak目录下建一个rsync_auto.sh文件
#vi /bak/rsync_auto.sh
在里面输入以下内容:
#!bin/sh
rsync -ave ssh root@192.168.0.1:/home/ /bak
二.在配置定时执行工具Crontab中加上以下语句
01 30 * * * sh /bak/rsync_auto.sh //每天凌晨1点30分执行一次
配置后可用以下命令查看:
#crontab -l
新创建的crontab配置文件会放在/var/spool/cron目录下。
这样配置完成后,可以打开日志文件看有没有运行:
#vi /var/log/cron