欢迎来到云服务器

系统配置

Linux系统下利用RSync实现文件增量备份和同步

[rsync实现网站的备份,文件的同步,差异系统的文件的同步,假如是windows的话,需要windows版本cwrsync]

一、什么是rsync

  rsync,remote synchronize顾名思意就知道它是一款实现长途同步成果的软件,它在同步文件的同时,可以保持本来文件的权限、时间、软硬链接等附加信息。 rsync是用 “rsync 算法”提供了一个客户机和长途文件处事器的文件同步的快速要领,并且可以通过ssh方法来传输文件,这样其保密性也很是好,别的它照旧免费的软件。

  rsync 包罗如下的一些特性:

  能更新整个目次和树和文件系统
  有选择性的保持标记链链、硬链接、文件属于、权限、设备以实时间等;
  对付安装来说,无任何非凡权限要求;
  对付多个文件来说,内部流水线淘汰文件期待的延时;
  能用rsh、ssh 或直接端口做为传输入端口;
  支持匿名rsync 同步文件,是抱负的镜像东西;

二、架设rsync处事器

  架设rsync 处事器较量简朴,写一个设置文件rsyncd.conf 。文件的书写也是有法则的,我们可以参照rsync.samba.org 上的文档来做。虽然我们首先要安装好rsync这个软件才行;

A、rsync的安装;

  获取rsync

  rysnc的官方网站:http://rsync.samba.org/可以从上面获得最新的版本。今朝最新版是3.05。虽然,因为rsync是一款如此有用的软件,所以许多Linux的刊行版本都将它收录在内了。

  软件包安装

  # sudo apt-get  install  rsync  注:在debian、ubuntu 等在线安装要领;
  # yum install rsync    注:Fedora、Redhat 等在线安装要领;
  # rpm -ivh rsync       注:Fedora、Redhat 等rpm包安装要领;

  其它Linux刊行版,请用相应的软件包揽理要领来安装。

  源码包安装

  tar xvf  rsync-xxx.tar.gz
  cd rsync-xxx
  ./configure --prefix=/usr  ;make ;make install   注:在用源码包编译安装之前,您得安装gcc等编译开具才行;
    
B、设置文件

  rsync的主要有以下三个设置文件rsyncd.conf(主设置文件)、rsyncd.secrets(暗码文件)、rsyncd.motd(rysnc处事器信息)

  处事器设置文件(/etc/rsyncd.conf),该文件默认不存在,请建设它。

  详细步调如下:

  #touch /etc/rsyncd.conf  #建设rsyncd.conf,这是rsync处事器的设置文件。
  #touch /etc/rsyncd.secrets  #建设rsyncd.secrets ,这是用户暗码文件。
  #chmod 600 /etc/rsyncd/rsyncd.secrets  #将rsyncd.secrets这个暗码文件的文件属性设为root拥有, 且权限要设为600, 不然无法备份乐成!
  #touch /etc/rsyncd.motd

  下一就是我们修改rsyncd.conf和rsyncd.secrets和rsyncd.motd文件的时候了。

  设定/etc/rsyncd.conf

  rsyncd.conf是rsync处事器主要设置文件。我们先来个简朴的示例,后头在具体说明各项浸染。

  好比我们要备份处事器上的/home和/opt,在/home中我想把easylife和samba目次解除在外;

  # Distributed under the terms of the GNU General Public License v2
  # Minimal configuration file for rsync daemon
  # See rsync(1) and rsyncd.conf(5) man pages for help

  # This line is required by the /etc/init.d/rsyncd script
  pid file = /var/run/rsyncd.pid  
  port = 873
  address = 192.168.1.171 
  #uid = nobody
  #gid = nobody   
  uid = root  
  gid = root  

  use chroot = yes 
  read only = yes 

  #limit access to private LANs
  hosts allow=192.168.1.0/255.255.255.0 10.0.1.0/255.255.255.0 
  hosts deny=*

  max connections = 5
  motd file = /etc/rsyncd.motd

  #This will give you a separate log file
  #log file = /var/log/rsync.log

  #This will log every file transferred - up to 85,000+ per user, per sync
  #transfer logging = yes

  log format = %t %a %m %f %b
  syslog facility = local3
  timeout = 300

  [rhel4home]  
  path = /home   
  list=yes
  ignore errors
  auth users = root
  secrets file = /etc/rsyncd.secrets 
  comment = This is RHEL 4 data 
  exclude = easylife/  samba/     

  [rhel4opt]
  path = /opt
  list=no
  ignore errors
  comment = This is RHEL 4 opt
  auth users = easylife
  secrets file = /etc/rsyncd/rsyncd.secrets

  注:关于auth users是必需在处事器上存在的真实的系统用户,假如你想用多个用户以,号离隔,好比auth users = easylife,root

  设定暗码文件

  暗码文件名目很简朴,rsyncd.secrets的内容名目为:

  用户名:暗码

  我们在例子中rsyncd.secrets的内容如下雷同的;在文档中说,有些系统不支持长暗码,本身实验着配置一下吧。

  easylife:keer
  root:mike

  chown root.root rsyncd.secrets  #修改属主
  chmod 600 rsyncd.secrets     #修改权限

腾讯云代理

Copyright © 2003-2021 MFISP.COM. 国外vps服务器租用 梦飞云服务器租用 版权所有 粤ICP备11019662号