3、基于Rsync进程备份同步
rsync不仅仅用作远程同步的发起端(客户端),也可以作为守护进程运行,为其他客户机提供备份源,配置rsync备份源需要建立配置文件 rsync.conf,创建备份账户,然后将rsync程序以”--daemon”选项运行。
1>.创建主配置文件
vi /etc/rsyncd.conf 
uid=nobody  #指定当该模块传输文件时守护进程用户,默认是nobody 
gid=nobody #指定当该模块传输文件时守护进程组,默认是nobody 
port=873  #后台程序使用端口,默认是873 
use chroot=yes  # 
max connections=4  #最大连接数 
log file=/var/log/rsyncd.log  #存放日志位置 
pid file=/var/run/rsyncd.pid  #存放进程位置 
hosts allow=192.168.0.200,192.168.0.201  #允许主机,或者是网段 
hosts deny=0.0.0.0/0  #禁止主机,没有这行,默认没有 
[web] 
  path=/var/www/html
  comment=rsync to web  
  read only=yes  #只允许下载,no是允许下载和上传,上传建议使用SSH 
  dont compress=*.gz *.bz2 *.tgz *.zip *.tar *.z 
  auth users=rsync   #认证的用户名,没有这两行表示是匿名,此用户与系统用户无关 
  secrets file=/etc/rsync.pass  #密码和用户名对比表,密码文件自己创建
注意:该文件的权限一定要是600,否则客户端将不能连接服务器。
2>.创建认证用户、密码和启动
vi /etc/rsync.pass 
rsync:123.com 
rsync --daemon #启动rsync服务 
killall -9 rsync #关闭rsync服务 
echo “rsync --daemon” >> /etc/rc.local  #设置开机启动 
iptables -A INPUT -p tcp --dport 873 -j ACCEPT  #设置防火墙
3>.将rsync服务交给xinetd服务管理,只有rsync请求,rsync才启用,其他时间关闭状态
1234567891011 vi /etc/xinetd.d/rsync
service rsync
{ 
        disable = yes  #修改为yes 
        socket_type     = stream 
        wait            = no 
        user            = root 
        server          = /usr/bin/rsync
        server_args     = --daemon 
        log_on_failure  += USERID 
}
4>.客户机下行同步
rsync -avz rysnc@192.168.0.200::/var/www/html/ /web #下行格式是这样,再加一个冒号
实现无交互验证,我们可以使用RSYNC_PASSWORD变量来存放密码,执行rsync时,会自动获取密码
echo "export RSYNC_PASSWORD="123.com"" >> /etc/profile
rsync -avz --delete rysnc://rsync@192.168.0.200/var/www/html/ /web #这个命令格式和上面是一样效果
写一个脚本,创建任务计划,同上,略...
