• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • bios
  • 系统安装
  • 系统进程
  • Windows
  • LINUX
  • RedHat/Centos
  • Ubuntu/Debian
  • Fedora
  • Solaris
  • 麒麟系统
  • 红旗Linux
  • 苹果MAC
  • 注册表
  • 其它系统
您的位置:首页 > 操作系统 >LINUX > RSync文件备份同步 Linux服务器rsync同步配置图文教程

RSync文件备份同步 Linux服务器rsync同步配置图文教程

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-05-12

佚名 通过本文向大家介绍了rsync全网备份,rsync增量备份,rsync备份,linux rsync,linux rsync命令等相关知识,希望对您有所帮助,也希望大家多多支持linkedu.com

Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件,也可以使用 Rsync 同步本地硬盘中的不同目录。Rsync 是用于取代rcp的一个工具,Rsync使用所谓的 “Rsync 算法” 来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。您可以参考 How Rsync Works A Practical Overview 进一步了解 rsync 的运作机制。

Rsync支持大多数的类Unix系统,无论是Linux、Solaris还是BSD上都经过了良好的测试。此外,它在windows平台下也有相应的版本,比较知名的有cwRsync和Sync2NAS。

需要注意的是必须在服务器A和B上都安装rsync,其中A服务器上是以服务器模式运行rsync,而B上则以客户端方式运行rsync。这样在web服务器A上运行rsync守护进程,在B上定时运行客户程序来备份web服务器A上需要备份的内容。

一、什么是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     #修改权限

注:1、将rsyncd.secrets这个密码文件的文件属性设为root拥有, 且权限要设为600, 否则无法备份成功!            出于安全目的,文件的属性必需是只有属主可读。
2、这里的密码值得注意,为了安全你不能把系统用户的密码写在这里。比如你的系统用户easylife密码是000000,为了安全你可以让rsync中的easylife为keer。这和samba的用户认证的密码原理是差不多的。

设定rsyncd.motd 文件;

它是定义rysnc服务器信息的,也就是用户登录信息。比如让用户知道这个服务器是谁提供的等;类似ftp服务器登录时,我们所看到的 linuxsir.org ftp ……。 当然这在全局定义变量时,并不是必须的,你可以用#号注掉,或删除;我在这里写了一个 rsyncd.motd的内容为:

++++++++++++++++++++++++++++++++++++++++++++++
Welcome to use the mike.org.cn rsync services!
           2002------2009
++++++++++++++++++++++++++++++++++++++++++++++

三、rsyncd.conf服务器的配置详解

A、全局定义

在rsync 服务器中,全局定义有几个比较关健的,根据我们前面所给的配置文件 rsyncd.conf 文件;

pid file = /var/run/rsyncd.pid   注:告诉进程写到 /var/run/rsyncd.pid 文件中;
port = 873  注:指定运行端口,默认是873,您可以自己指定;
address = 192.168.1.171  注:指定服务器IP地址
uid = nobody   
gid = nobdoy  

注:服务器端传输文件时,要发哪个用户和用户组来执行,默认是nobody。 如果用nobody 用户和用户组,可能遇到权限问题,有些文件从服务器上拉不下来。所以我就偷懒,为了方便,用了root 。不过您可以在定义要同步

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • RSync文件备份同步 Linux服务器rsync同步配置图文教程

相关文章

  • 2017-05-12详解Linux系统内存寻址的分页机制
  • 2017-05-12linux批量操作时提示Argument list too long解决方法
  • 2017-05-12Linux系统中dig命令用法完全罗列
  • 2017-05-12Linux禁用root账户的方法
  • 2017-05-12Linux阵列 RAID详解
  • 2017-05-12全面解析Linux的grep命令中正则表达式的用法
  • 2017-05-12Linux系统下安装ccze小工具美化系统日志
  • 2017-05-12在Linux中使用pushd和popd命令操作目录的用法
  • 2017-05-12举例讲解Linux中tcpdump工具的应用
  • 2017-05-12ubuntu 更换阿里源实例

文章分类

  • bios
  • 系统安装
  • 系统进程
  • Windows
  • LINUX
  • RedHat/Centos
  • Ubuntu/Debian
  • Fedora
  • Solaris
  • 麒麟系统
  • 红旗Linux
  • 苹果MAC
  • 注册表
  • 其它系统

最近更新的内容

    • Linux poll机制详细讲解
    • Linux下安装使用Mutt邮件客户端并配置邮件警报功能
    • Linux下网络故障诊断
    • 最牛技术 1秒启动Linux的窍门
    • 详解Linux系统中安装配置Samba服务器的步骤
    • Linux shell 比较运算符详解
    • 不可以运行的Linux命令:破坏系统
    • 在Linux系统下使用Docker以及Weave搭建Nginx反向代理
    • Linux下增大可打开文件描述符的最大数的方法
    • 发现Linux中IP地址冲突的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有