环境介绍:

 Windows文件服务器:Windows SERVER 2003 (64bit) IP:10.30.10.1

 Linux 备份服务器: Centos 6.3   (64bit) IP:10.30.201.100
 Cwrsyncserver 版本:cwRsyncServer_4.0.3_Installer(网上有得下载)
 

    之前对于windows文件服务器的备份方法都是手动使用fastcopy来做了,把windows server2003上要备份的文件通过fastcopy同步到另外一台windows server2008(普通HP台式机,用来跑辅域的)上,没能做到自动定期备份,也增加了自己的工作量;最近从机房调整出一台IBM X3650,硬盘大小为2TB*9个,这样磁盘空间就不是个问题了,这台机器己正常搭建了两台用于监控平台的虚拟机(一台跑cacti,一台跑nagios)多余的空间用于做资料的备份就再合适不过了。

第一步:
  在windows server 2003上配置Cwrsyncserver,安装很简单,下一步下一步就完成了,注意下cwrsyncserver有个设置用户与密码的地方,得记录下,要么就改为你自己的用户名与密码。

安装完成后的内容:

主要配置文件:rsyncd.conf

 

 
  
  1. use chroot = false                      
  2.  
  3. strict modes = false                      
  4.  
  5. hosts allow = 10.30.201.100              #连接允许的IP地址 
  6.  
  7. log file = rsyncd.log 
  8.  
  9. # Module definitions 
  10.  
  11. # Remember cygwin naming conventions : c:\work becomes /cygwin/c/work 
  12.  
  13.  
  14. [test]                           #这里我就不改名了,使用默认模块名字 
  15.  
  16. path = /cygdrive/E/                #选择路径,此表示为整个E盘路径,不支持中文 
  17.  
  18. read only = yes                   #只读模式 
  19.  
  20. transfer logging = yes 
 

上述只修改了三处地方,其它的想了解可以百度,一般看单词的意思也可以大概的了解了。

第二步:

启动cwrsync服务:

 右键 我的电脑à管理à服务与应用程序à服务àRsyncServerà右键 属性à登陆à在此帐户输入有效的用户名(域用户、要有权限管理E盘的用户名哦),密码和、再次确认密码;此处我使用域管理员帐号与密码(如果用户和密码无权限或错误,将无法启动RsyncServer服务)。启动RsyncServer服务,并修改属性为自动,以便后续开机就启动此服务。

服务启动成功后,就可以配置linux客户端了。

第三步:

 
  
  1. # telnet 10.30.10.1 873 #telnet windows server 2003的rsync服务的端口,能正常连接后就表示windows上的rsync服务正常了。 
第四步:

新建一个fzh_passwd的文件,内容为我在windows中RsyncServer中设定的密码内容:

 

 
  
  1. # cd /root 
  2.  
  3. #touch fzh_passwd  #再将密码写入些文件中 
  4.  
  5. #chmod 600 fzh_passwd #改下权限,只有root用户能看。 

我的linux服务器磁盘空间情况如下:

第五步:
将windows E盘的数据同步至/data1/这个分区下:

 
  
  1. #rsync -av --progress  --password-file=/root/fzh_passwd fzh@10.30.10.1::test /data1/ 

第一次同步时间相当长,因为数据资料有360G左右。

第六步:

同步完成后,将此参数写成一个shell脚本,再设定为周三与周日23点同步一次

脚本内容如下:

 

 
  
  1. #!/bin/bash 
  2. #create by fengzehua 
  3. #backup 10.30.10.1 file server disk E:\ 
  4. PASSWORD=/root/fzh_passwd 
  5. SOURCE='10.30.10.1::test' 
  6. USER=fzh 
  7. DESTI=/data1/ 
  8. echo "start backup file server" 
  9.  
  10. /usr/bin/rsync -av --progress --delete --password-file=$PASSWORD $USER@$SOURCE $DEST 
  11. if [ $? -eq 0 ] 
  12.    then   
  13.  
  14.     echo "file server backup successfully!"  #此处也可以更改下,以邮件的形式提示备份成功
  15. else 
  16.  
  17.     echo "file server backup failure, try again:" 
  18.  
  19.     /usr/bin/rsync -av --progress --delete --password-file=$PASSWORD $USER@$SOURCE $DEST 
  20. fi 
第七步:

将上述内容保存至/root/backup/backup_fileserver.sh里;再把他写入计划任务:

 

 
  
  1. #crontab –e 
  2.   
  3. #wednesday 23:00 backup 10.30.10.1 file servers E:\ 
  4. 00 23 * * 3 /bin/bash /root/backup/backup_fileserver.sh > /dev/null 2>&1 
  5.   
  6. #sunday 23:00 backup 10.30.10.1 file server E:\ 
  7. 00 23 * * 0 /bin/bash /root/backup/backup_fileserver.sh > /dev/null 2>&1 

保存退出后;重启crond服务

 
  
  1. #service crond restart 

      如大家在过程中有疑问,可咨询本人,QQ联系方式:278310747