Windows下使用rsync备份远程Linux服务器数据

来源:互联网 发布:家庭收支知多少 编辑:程序博客网 时间:2024/04/18 22:35
闲暇时间又用了下rsync备份远程数据,把过程记录下来。rsync是Linux系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync。rsync支持大多数的类Unix系统,无论是Linux、Solaris还是BSD上都经过了良好的测试。rsync的最新版本可以从http://rsync.samba.org/rsync/获得。它的特性如下:
  
  1、可以镜像保存整个目录树和文件系统。
  
  2、可以很容易做到保持原来文件的权限、时间、软硬链接等等。
  
  3、无须特殊权限即可安装。
  
  4、优化的流程,文件传输效率高。
  

  5、可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。


1、首先配置linux服务端,我这里rsync以daemon方式启动,rsync --daemon --config=/etc/rsync.conf, 需要手动创建rsync.conf


uid = root            # 备份以什么身份进行,用户ID
gid = root            # 备份以什么身份进行,组ID

max connections = 4        # 最大连接数为4

[www]
path=/var/web/test   #要备份的目录

[database]
path=/var/lib/mysql


comment=bakup
ignore errors
read only=yes
auth users=bakusr
hosts allow=xxxx.xxxxx.xxx.xx
secrets file=/etc/bkusr.pass


保存退出,创建编辑bkusr.pass文件写入:bkusr:123456并设置权限:chmod 600 bkusr.pass


到此配置结束,rsync启动后每次clinet连接时都会去读rsync.conf所以修改配置文件无需再启rsync


2、下载cwRsync下windows主机并安装,在命令行下执行如下命令即可:

rsync -vzrtopg --progress --delete bkusr@xx.xx.xx.xx::www .\wbk


password:

输入上面指定的密码开始备份,速度相当不错!


同时附上使用rsync秒删linux下大文件或目录的方法(使用的是替换原理):

1)、创建空文件或目录 如:mkdir /tmp/bkdir

2)、rsync --delete-before -d /tmp/bkdir /targetdir